summaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-09-06 18:31:14 +0100
committerBram Moolenaar <Bram@vim.org>2022-09-06 18:31:14 +0100
commit58779858fb5a82a3233af5d4237a3cece88c10d4 (patch)
treec1654eb20a1a8300e1b304263ccea655928b3401 /src/eval.c
parent2834ebdee473c838e50e60d0aa160f0e62fc8ef9 (diff)
patch 9.0.0397: :defer not tested with exceptions and ":qa!"v9.0.0397
Problem: :defer not tested with exceptions and ":qa!". Solution: Test :defer works when exceptions are thrown and when ":qa!" is used. Invoke the deferred calls on exit.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c
index 6b2d86b47a..5ec5b8ae7b 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -263,8 +263,9 @@ eval_expr_typval(typval_T *expr, typval_T *argv, int argc, typval_T *rettv)
if (partial->pt_func != NULL
&& partial->pt_func->uf_def_status != UF_NOT_COMPILED)
{
+ // FIXME: should create a funccal and link it in current_funccal.
if (call_def_function(partial->pt_func, argc, argv,
- partial, rettv) == FAIL)
+ partial, NULL, rettv) == FAIL)
return FAIL;
}
else