fix(window): avoid UAF in close_windows (#40853)

This commit is contained in:
Barrett Ruth
2026-07-20 02:48:36 -05:00
committed by GitHub
parent 01c4d37959
commit a787a31490
2 changed files with 15 additions and 1 deletions

View File

@@ -2503,6 +2503,20 @@ describe('api/buf', function()
ok(not api.nvim_buf_is_loaded(b))
ok(api.nvim_buf_is_valid(b))
end)
it('does not crash if WinClosed closes the next tabpage #40852', function()
exec_lua(function()
vim.cmd.tabnew()
vim.api.nvim_create_autocmd('WinClosed', {
callback = function()
pcall(vim.api.nvim_win_close, 0, true)
end,
})
local bufs = vim.api.nvim_list_bufs()
vim.api.nvim_buf_delete(bufs[#bufs - 1], { force = true })
end)
assert_alive()
end)
end)
describe('nvim_buf_get_mark', function()