Make sure window is still valid in the middle of calling :lopen (#14240)

Make sure that oldwin is not invalid after splitting

Revisit this when porting vim patch v8.1.0892 and related quickfix patches.
This commit is contained in:
Tony Chen
2021-03-29 05:19:59 -07:00
committed by GitHub
parent 8665a96b92
commit aa6adacd77
3 changed files with 26 additions and 0 deletions

View File

@@ -68,4 +68,17 @@ describe('setloclist()', function()
command('lclose | wincmd w | lopen')
eq('foo', get_cur_win_var('quickfix_title'))
end)
it("doesn't crash when when window is closed in the middle #13721", function()
helpers.insert([[
hello world]])
command("vsplit")
command("autocmd WinLeave * :call nvim_win_close(0, v:true)")
command("call setloclist(0, [])")
command("lopen")
helpers.assert_alive()
end)
end)