Problem: :delfunction causes illegal memory access.
Solution: Correct logic when deciding to free a function.
call assert_equal(2, g:Count())
call assert_equal(3, g:Count2())
- " This causes memory access errors.
- " delfunc LambdaFoo
- " delfunc LambdaBar
+ delfunc LambdaFoo
+ delfunc LambdaBar
endfunc
* Numbered functions and lambdas snould be kept if the refcount is
* one or more. */
if (fp->uf_refcount > (isdigit(fp->uf_name[0])
- || fp->uf_name[0] == '<') ? 0 : 1)
+ || fp->uf_name[0] == '<' ? 0 : 1))
{
/* Function is still referenced somewhere. Don't free it but
* do remove it from the hashtable. */
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 2139,
/**/
2138,
/**/