1
0
forked from aniani/vim

patch 8.2.3759: quickfix buffer becomes hidden while still in a window

Problem:    Quickfix buffer becomes hidden while still in a window.
Solution:   Check if the closed window is the last window showing the quickfix
            buffer. (Yegappan Lakshmanan, closes #9303, closes #9300)
This commit is contained in:
Yegappan Lakshmanan
2021-12-08 20:03:31 +00:00
committed by Bram Moolenaar
parent 2172bff364
commit 78a61068cf
4 changed files with 50 additions and 10 deletions

View File

@@ -5636,4 +5636,40 @@ fun Test_vimgrep_nomatch()
cclose
endfunc
" Test for opening the quickfix window in two tab pages and then closing one
" of the quickfix windows. This should not make the quickfix buffer unlisted.
" (github issue #9300).
func Test_two_qf_windows()
cexpr "F1:1:line1"
copen
tabnew
copen
call assert_true(&buflisted)
cclose
tabfirst
call assert_true(&buflisted)
let bnum = bufnr()
cclose
" if all the quickfix windows are closed, then buffer should be unlisted.
call assert_false(buflisted(bnum))
%bw!
" Repeat the test for a location list
lexpr "F2:2:line2"
lopen
let bnum = bufnr()
tabnew
exe "buffer" bnum
tabfirst
lclose
tablast
call assert_true(buflisted(bnum))
tabclose
lopen
call assert_true(buflisted(bnum))
lclose
call assert_false(buflisted(bnum))
%bw!
endfunc
" vim: shiftwidth=2 sts=2 expandtab