patch 8.2.2093: Vim9: script test sometimes fails
Problem: Vim9: script test sometimes fails.
Solution: Do not find a script variable by its typval if the name was
cleared.
diff --git a/src/version.c b/src/version.c
index 6f242ff..b28638b 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2093,
+/**/
2092,
/**/
2091,
diff --git a/src/vim9script.c b/src/vim9script.c
index 3780356..fa455ab 100644
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -741,7 +741,9 @@
{
svar_T *sv = ((svar_T *)si->sn_var_vals.ga_data) + idx;
- if (sv->sv_tv == dest)
+ // If "sv_name" is NULL the variable was hidden when leaving a block,
+ // don't check "sv_tv" then, it might be used for another variable now.
+ if (sv->sv_name != NULL && sv->sv_tv == dest)
return sv;
}
iemsg("check_script_var_type(): not found");