patch 8.2.4822: setting ufunc to NULL twice
Problem: Setting ufunc to NULL twice.
Solution: Set ufunc to NULL in find_exported(). (closes #19275)
diff --git a/src/eval.c b/src/eval.c
index f7445bf..61b09fb 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -6159,7 +6159,7 @@
char_u *exp_name;
int cc;
int idx;
- ufunc_T *ufunc = NULL;
+ ufunc_T *ufunc;
type_T *type;
// Found script from "import {name} as name", script item name must
diff --git a/src/version.c b/src/version.c
index 36adeb6..612d9e0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 4822,
+/**/
4821,
/**/
4820,
diff --git a/src/vim9script.c b/src/vim9script.c
index bb5f029..b1bfe63 100644
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -710,6 +710,8 @@
svar_T *sv;
scriptitem_T *script = SCRIPT_ITEM(sid);
+ *ufunc = NULL;
+
if (script->sn_import_autoload && script->sn_state == SN_STATE_NOT_LOADED)
{
if (do_source(script->sn_name, FALSE, DOSO_NONE, NULL) == FAIL)
@@ -724,7 +726,6 @@
if (idx >= 0)
{
sv = ((svar_T *)script->sn_var_vals.ga_data) + idx;
- *ufunc = NULL;
if ((sv->sv_flags & SVFLAG_EXPORTED) == 0)
{
if (verbose)