diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 85e8e9d..43fc68e 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -3717,6 +3717,24 @@
   v9.CheckScriptSuccess(lines)
 enddef
 
+def Test_script_local_other_script()
+  var lines =<< trim END
+      function LegacyJob()
+        let FuncRef = function('s:close_cb')
+      endfunction
+      function s:close_cb(...)
+      endfunction
+  END
+  lines->writefile('Xlegacy.vim')
+  source Xlegacy.vim
+  g:LegacyJob()
+  g:LegacyJob()
+  g:LegacyJob()
+
+  delfunc g:LegacyJob
+  delete('Xlegacy.vim')
+enddef
+
 def Test_check_func_arg_types()
   var lines =<< trim END
       vim9script
diff --git a/src/userfunc.c b/src/userfunc.c
index 42e1e89..6a5d84b 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -2215,8 +2215,9 @@
 
 /*
  * There are two kinds of function names:
- * 1. ordinary names, function defined with :function or :def
- * 2. numbered functions and lambdas
+ * 1. ordinary names, function defined with :function or :def;
+ *    can start with "<SNR>123_" literally or with K_SPECIAL.
+ * 2. Numbered functions and lambdas: "<lambda>123"
  * For the first we only count the name stored in func_hashtab as a reference,
  * using function() does not count as a reference, because the function is
  * looked up by name.
@@ -2224,7 +2225,7 @@
     int
 func_name_refcount(char_u *name)
 {
-    return numbered_function(name) || *name == '<';
+    return numbered_function(name) || (name[0] == '<' && name[1] == 'l');
 }
 
 /*
diff --git a/src/version.c b/src/version.c
index eec3622..2efc6bf 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4548,
+/**/
     4547,
 /**/
     4546,
