From: Bram Moolenaar Date: Wed, 27 Jan 2021 20:37:13 +0000 (+0100) Subject: patch 8.2.2417: condition stack values may be used when not set X-Git-Tag: v8.2.2417 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3e492c2d5fbd4ae395ffddfc059a3c414604b951;p=vim patch 8.2.2417: condition stack values may be used when not set Problem: Condition stack values may be used when not set. Solution: Clear cs_script_var_len and cs_block_id just in case they get used later. (issue #7733) --- diff --git a/src/ex_eval.c b/src/ex_eval.c index 94338fcdb..ad9de26db 100644 --- a/src/ex_eval.c +++ b/src/ex_eval.c @@ -920,6 +920,13 @@ enter_block(cstack_T *cstack) cstack->cs_block_id[cstack->cs_idx] = ++si->sn_last_block_id; si->sn_current_block_id = si->sn_last_block_id; } + else + { + // Just in case in_vim9script() does not return the same value when the + // block ends. + cstack->cs_script_var_len[cstack->cs_idx] = 0; + cstack->cs_block_id[cstack->cs_idx] = 0; + } } static void diff --git a/src/version.c b/src/version.c index 17ca2717d..d9d8104af 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2417, /**/ 2416, /**/