patch 8.2.4541: Crash in debugger when a variable is not available

Problem:    Crash in debugger when a variable is not available in the current
            block.
Solution:   Check for a NULL name. (closes #9926)
diff --git a/src/testdir/test_debugger.vim b/src/testdir/test_debugger.vim
index c05f4e1..1856f8d 100644
--- a/src/testdir/test_debugger.vim
+++ b/src/testdir/test_debugger.vim
@@ -73,6 +73,13 @@
 	  endtry
 	  return var1
 	endfunc
+        def Vim9Func()
+          for cmd in ['confirm', 'xxxxxxx']
+            for _ in [1, 2]
+              echo cmd
+            endfor
+          endfor
+        enddef
   END
   call writefile(lines, 'Xtest.vim')
 
@@ -298,6 +305,14 @@
 	      \ 'line 5: catch'])
   call RunDbgCmd(buf, 'c')
 
+  " Test showing local variable in :def function
+  call RunDbgCmd(buf, ':breakadd func 2 Vim9Func')
+  call RunDbgCmd(buf, ':call Vim9Func()', ['line 2:             for _ in [1, 2]'])
+  call RunDbgCmd(buf, 'next', ['line 2: for _ in [1, 2]'])
+  call RunDbgCmd(buf, 'echo cmd', ['confirm'])
+  call RunDbgCmd(buf, 'breakdel *')
+  call RunDbgCmd(buf, 'cont')
+
   " Test for :quit
   call RunDbgCmd(buf, ':debug echo Foo()')
   call RunDbgCmd(buf, 'breakdel *')
diff --git a/src/version.c b/src/version.c
index 2947790..122ba03 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4541,
+/**/
     4540,
 /**/
     4539,
diff --git a/src/vim9execute.c b/src/vim9execute.c
index d908e64..2cf7e46 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1622,7 +1622,10 @@
     // Go through the local variable names, from last to first.
     for (idx = debug_var_count - 1; idx >= 0; --idx)
     {
-	if (STRCMP(((char_u **)dfunc->df_var_names.ga_data)[idx], name) == 0)
+	char_u *varname = ((char_u **)dfunc->df_var_names.ga_data)[idx];
+
+	// the variable name may be NULL when not available in this block
+	if (varname != NULL && STRCMP(varname, name) == 0)
 	    return STACK_TV_VAR(idx);
     }