commit b313109a25ac5d910b109410ed34324785bf3142
parent 310d0f15c0db1622d24e8fda855e7dfa3d2fe832
Author: zeertzjq <zeertzjq@outlook.com>
Date: Mon, 13 Nov 2023 06:49:23 +0800
vim-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 vim/vim#8521)
https://github.com/vim/vim/commit/303215d60cece0462f040035502b5bc95373bd6e
Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat:
1 file changed, 13 insertions(+), 0 deletions(-)
diff --git a/test/old/testdir/test_debugger.vim b/test/old/testdir/test_debugger.vim
@@ -1050,6 +1050,7 @@ func Test_debug_def_function()
eval 1
enddef
enddef
+
def g:FuncComment()
# comment
echo "first"
@@ -1057,6 +1058,7 @@ func Test_debug_def_function()
# comment
echo "second"
enddef
+
def g:FuncForLoop()
eval 1
for i in [11, 22, 33]
@@ -1064,6 +1066,11 @@ func Test_debug_def_function()
endfor
echo "done"
enddef
+
+ def g:FuncWithSplitLine()
+ eval 1
+ | eval 2
+ enddef
END
call writefile(file, 'Xtest.vim')
@@ -1119,6 +1126,12 @@ func Test_debug_def_function()
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')