commit c804c7df0cf3259b4ee3e286293b43529c9e42d6
parent cc7a50a9ae9384167bd0fc2ee2eb7f1b31842f27
Author: zeertzjq <zeertzjq@outlook.com>
Date: Fri, 14 Apr 2023 15:24:57 +0800
vim-patch:8.2.1162: crash when using a lambda
Problem: Crash when using a lambda.
Solution: Check for evalarg to be NULL.
https://github.com/vim/vim/commit/efaaaa683b7b0cebc128be5c0c257b9d6578ac96
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat:
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c
@@ -366,7 +366,7 @@ int get_lambda_tv(char **arg, typval_T *rettv, evalarg_T *evalarg)
}
eval_lavars_used = old_eval_lavars;
- if (evalarg->eval_tofree == NULL) {
+ if (evalarg != NULL && evalarg->eval_tofree == NULL) {
evalarg->eval_tofree = tofree;
} else {
xfree(tofree);
@@ -377,7 +377,7 @@ errret:
ga_clear_strings(&newargs);
xfree(fp);
xfree(pt);
- if (evalarg->eval_tofree == NULL) {
+ if (evalarg != NULL && evalarg->eval_tofree == NULL) {
evalarg->eval_tofree = tofree;
} else {
xfree(tofree);