diff src/evalvars.c @ 21056:a7c202f5cbe9 v8.2.1079

patch 8.2.1079: Vim9: no line break allowed in a while loop Commit: https://github.com/vim/vim/commit/d5053d015a957b343ad9c9e45e0abd2978f10cf0 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jun 28 15:51:16 2020 +0200 patch 8.2.1079: Vim9: no line break allowed in a while loop Problem: Vim9: no line break allowed in a while loop. Solution: Update stored loop lines when finding line breaks.
author Bram Moolenaar <Bram@vim.org>
date Sun, 28 Jun 2020 16:00:04 +0200
parents 7a9daf73a724
children 4d844a65183d
line wrap: on
line diff
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -799,8 +799,11 @@ ex_let(exarg_T *eap)
 		++emsg_skip;
 	    CLEAR_FIELD(evalarg);
 	    evalarg.eval_flags = eap->skip ? 0 : EVAL_EVALUATE;
-	    evalarg.eval_cookie = eap->getline == getsourceline
-							  ? eap->cookie : NULL;
+	    if (getline_equal(eap->getline, eap->cookie, getsourceline))
+	    {
+		evalarg.eval_getline = eap->getline;
+		evalarg.eval_cookie = eap->cookie;
+	    }
 	    i = eval0(expr, &rettv, eap, &evalarg);
 	    if (eap->skip)
 		--emsg_skip;