1
0
forked from aniani/vim

patch 8.2.2474: using freed memory when window is closed by autocommand

Problem:    Using freed memory when window is closed by autocommand.
            (houyunsong)
Solution:   Check the window pointer is still valid.
This commit is contained in:
Bram Moolenaar 2021-02-06 19:19:42 +01:00
parent 8c6951fa28
commit 2c7080bf1c
3 changed files with 18 additions and 0 deletions

View File

@ -2603,6 +2603,8 @@ qflist_valid(win_T *wp, int_u qf_id)
if (wp != NULL)
{
if (!win_valid(wp))
return FALSE;
qi = GET_LOC_LIST(wp); // Location list
if (qi == NULL)
return FALSE;

View File

@ -2783,4 +2783,18 @@ func Test_autocmd_closing_cmdwin()
only
endfunc
func Test_autocmd_vimgrep()
augroup aucmd_vimgrep
au QuickfixCmdPre,BufNew,BufDelete,BufReadCmd * sb
au QuickfixCmdPre,BufNew,BufDelete,BufReadCmd * q9
augroup END
" TODO: if this is executed directly valgrind reports errors
call assert_fails('lv?a?', 'E926:')
augroup aucmd_vimgrep
au!
augroup END
endfunc
" vim: shiftwidth=2 sts=2 expandtab

View File

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