diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-01-30 07:34:37 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-30 07:34:37 +0800 |
commit | a2070ba8773ca264f68a4cfb50cb3d12219838e7 (patch) | |
tree | 57ab3803bb61f7070d5227ef61c71be21090af9f /test/old | |
parent | be5cf338362244a944cdeebf07520f85d7d93226 (diff) | |
download | rneovim-a2070ba8773ca264f68a4cfb50cb3d12219838e7.tar.gz rneovim-a2070ba8773ca264f68a4cfb50cb3d12219838e7.tar.bz2 rneovim-a2070ba8773ca264f68a4cfb50cb3d12219838e7.zip |
vim-patch:9.1.0065: Segfault with CompleteChanged autocommand (#27261)
Problem: Segfault with CompleteChanged autocommand
(markonm )
Solution: Test match->cp_prev for being NULL before accessing it
closes: vim/vim#13929
https://github.com/vim/vim/commit/fef66301665027f1801a18d796f74584666f41ef
Co-authored-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'test/old')
-rw-r--r-- | test/old/testdir/test_ins_complete.vim | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/test/old/testdir/test_ins_complete.vim b/test/old/testdir/test_ins_complete.vim index e1c8b82908..0f4838d990 100644 --- a/test/old/testdir/test_ins_complete.vim +++ b/test/old/testdir/test_ins_complete.vim @@ -2407,4 +2407,18 @@ func Test_complete_info_index() bwipe! endfunc -" vim: shiftwidth=2 sts=2 expandtab +func Test_complete_changed_complete_info() + CheckRunVimInTerminal + " this used to crash vim, see #13929 + let lines =<< trim END + set completeopt=menuone + autocmd CompleteChanged * call complete_info(['items']) + call feedkeys("iii\<cr>\<c-p>") + END + call writefile(lines, 'Xsegfault', 'D') + let buf = RunVimInTerminal('-S Xsegfault', #{rows: 5}) + call WaitForAssert({-> assert_match('^ii', term_getline(buf, 1))}, 1000) + call StopVimInTerminal(buf) +endfunc + +" vim: shiftwidth=2 sts=2 expandtab nofoldenable |