patch 8.2.3116: Vim9: crash when debugging a function with line continuation
Problem: Vim9: crash when debugging a function with line continuation.
Solution: Check for a NULL pointer. (closes #8521)
diff --git a/src/testdir/test_debugger.vim b/src/testdir/test_debugger.vim
index 97e115b..5b12c58 100644
--- a/src/testdir/test_debugger.vim
+++ b/src/testdir/test_debugger.vim
@@ -1009,6 +1009,7 @@
eval 1
enddef
enddef
+
def g:FuncComment()
# comment
echo "first"
@@ -1016,6 +1017,7 @@
# comment
echo "second"
enddef
+
def g:FuncForLoop()
eval 1
for i in [11, 22, 33]
@@ -1023,6 +1025,11 @@
endfor
echo "done"
enddef
+
+ def g:FuncWithSplitLine()
+ eval 1
+ | eval 2
+ enddef
END
call writefile(file, 'Xtest.vim')
@@ -1078,6 +1085,12 @@
call RunDbgCmd(buf, 'next', ['function FuncForLoop', 'line 2: for i in [11, 22, 33]'])
call RunDbgCmd(buf, 'echo i', ['22'])
+ call RunDbgCmd(buf, 'breakdel *')
+ call RunDbgCmd(buf, 'cont')
+
+ call RunDbgCmd(buf, ':breakadd func FuncWithSplitLine')
+ call RunDbgCmd(buf, ':call FuncWithSplitLine()', ['function FuncWithSplitLine', 'line 1: eval 1 | eval 2'])
+
call RunDbgCmd(buf, 'cont')
call StopVimInTerminal(buf)
call delete('Xtest.vim')