diff src/testdir/test_debugger.vim @ 28033:73f4d1e479f2 v8.2.4541

patch 8.2.4541: Crash in debugger when a variable is not available Commit: https://github.com/vim/vim/commit/e406ff87c86de9da2d02d0e5ebbbf5c5eac051a6 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Mar 10 20:47:43 2022 +0000 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)
author Bram Moolenaar <Bram@vim.org>
date Thu, 10 Mar 2022 22:00:04 +0100
parents 4c16acb2525f
children 35e24d9de858
line wrap: on
line diff
--- a/src/testdir/test_debugger.vim
+++ b/src/testdir/test_debugger.vim
@@ -73,6 +73,13 @@ func Test_Debugger()
 	  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 @@ func Test_Debugger()
 	      \ '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 *')