commit | 2ea79ad83584f5d668adfb935be67ee0e0e9995b | [log] [tgz] |
---|---|---|
author | Bram Moolenaar <Bram@vim.org> | Sun Oct 18 23:32:13 2020 +0200 |
committer | Bram Moolenaar <Bram@vim.org> | Sun Oct 18 23:32:13 2020 +0200 |
tree | d4b994fc48309cfb9bfafd0169a46ac39e36ea3d | |
parent | a2c026d0fd470d68d679616fddfc285cb4834412 [diff] [blame] |
patch 8.2.1862: vim9: memory leak when compiling lambda fails Problem: vim9: memory leak when compiling lambda fails. Solution: Call clear_evalarg().
diff --git a/src/vim9compile.c b/src/vim9compile.c index edfa325..55368d1 100644 --- a/src/vim9compile.c +++ b/src/vim9compile.c
@@ -2692,7 +2692,10 @@ // Get the funcref in "rettv". if (get_lambda_tv(arg, &rettv, &evalarg) != OK) + { + clear_evalarg(&evalarg, NULL); return FAIL; + } ufunc = rettv.vval.v_partial->pt_func; ++ufunc->uf_refcount;