1
0
forked from aniani/vim

patch 8.1.0489: crash when autocmd clears vimpgrep location list

Problem:    Crash when autocmd clears vimpgrep location list.
Solution:   Return from qf_jump_edit_buffer() early. (Yegappan Lakshmanan)
This commit is contained in:
Bram Moolenaar
2018-10-21 18:47:43 +02:00
parent 9f84ded38b
commit b6f1480a6a
3 changed files with 74 additions and 34 deletions

View File

@@ -3255,6 +3255,17 @@ func Test_lvimgrep_crash()
augroup QF_Test
au!
augroup END
new | only
augroup QF_Test
au!
au BufEnter * call setloclist(0, [], 'r')
augroup END
call assert_fails('lvimgrep Test_lvimgrep_crash *', 'E926:')
augroup QF_Test
au!
augroup END
enew | only
endfunc
@@ -3337,6 +3348,37 @@ func Test_lhelpgrep_autocmd()
call assert_equal('help', &filetype)
call assert_equal(1, getloclist(0, {'nr' : '$'}).nr)
au! QuickFixCmdPost
new | only
augroup QF_Test
au!
au BufEnter * call setqflist([], 'f')
augroup END
call assert_fails('helpgrep quickfix', 'E925:')
augroup QF_Test
au! BufEnter
augroup END
new | only
augroup QF_Test
au!
au BufEnter * call setqflist([], 'r')
augroup END
call assert_fails('helpgrep quickfix', 'E925:')
augroup QF_Test
au! BufEnter
augroup END
new | only
augroup QF_Test
au!
au BufEnter * call setloclist(0, [], 'r')
augroup END
call assert_fails('lhelpgrep quickfix', 'E926:')
augroup QF_Test
au! BufEnter
augroup END
new | only
endfunc