0
0
mirror of https://github.com/vim/vim.git synced 2025-09-07 22:03:36 -04:00

patch 9.0.0322: crash when no errors and 'quickfixtextfunc' is set

Problem:    Crash when no errors and 'quickfixtextfunc' is set.
Solution:   Do not handle errors if there aren't any.
This commit is contained in:
Bram Moolenaar 2022-08-29 20:45:16 +01:00
parent 37fef16c22
commit 4f1b083be4
3 changed files with 19 additions and 1 deletions

View File

@ -4761,7 +4761,7 @@ qf_fill_buffer(qf_list_T *qfl, buf_T *buf, qfline_T *old_last, int qf_winid)
}
// Check if there is anything to display
if (qfl != NULL)
if (qfl != NULL && qfl->qf_start != NULL)
{
char_u dirname[MAXPATHL];
int invalid_val = FALSE;

View File

@ -4107,6 +4107,22 @@ func Xgetlist_empty_tests(cchar)
endif
endfunc
func Test_empty_list_quickfixtextfunc()
" This was crashing. Can only reproduce by running it in a separate Vim
" instance.
let lines =<< trim END
func s:Func(o)
cgetexpr '0'
endfunc
cope
let &quickfixtextfunc = 's:Func'
cgetfile [ex
END
call writefile(lines, 'Xquickfixtextfunc')
call RunVim([], [], '-e -s -S Xquickfixtextfunc -c qa')
call delete('Xquickfixtextfunc')
endfunc
func Test_getqflist()
call Xgetlist_empty_tests('c')
call Xgetlist_empty_tests('l')

View File

@ -707,6 +707,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
322,
/**/
321,
/**/