From a7583c42cd6b64fd276a5d7bb0db5ce7bfafa730 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sat, 7 May 2022 21:14:05 +0100 Subject: patch 8.2.4912: using execute() to define a lambda doesn't work Problem: Using execute() to define a lambda doesn't work. (Ernie Rael) Solution: Put the getline function in evalarg. (closes #10375) --- src/eval.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/eval.c') diff --git a/src/eval.c b/src/eval.c index 41094cd69f..4906fa6142 100644 --- a/src/eval.c +++ b/src/eval.c @@ -140,7 +140,7 @@ fill_evalarg_from_eap(evalarg_T *evalarg, exarg_T *eap, int skip) if (eap != NULL) { evalarg->eval_cstack = eap->cstack; - if (sourcing_a_script(eap)) + if (sourcing_a_script(eap) || eap->getline == get_list_line) { evalarg->eval_getline = eap->getline; evalarg->eval_cookie = eap->cookie; -- cgit v1.2.3