fixes #175 | early return if internal state is invalid(does not match nvim's state

This commit is contained in:
David 2021-01-13 11:31:13 +02:00
parent 361e20ecfa
commit bb0232ca57

View File

@ -279,8 +279,11 @@ end
local M = {}
function is_bufnr_valid(bufnr)
return vim.fn.bufexists(bufnr) == 1
end
function M.draw(tree, reload)
if not tree.bufnr then return end
if not is_bufnr_valid(tree.bufnr) then return end
api.nvim_buf_set_option(tree.bufnr, 'modifiable', true)
local cursor = api.nvim_win_get_cursor(tree.winnr())
if reload then
@ -300,7 +303,7 @@ function M.draw(tree, reload)
end
function M.render_hl(bufnr)
if not bufnr then return end
if not is_bufnr_valid(bufnr) then return end
api.nvim_buf_clear_namespace(bufnr, namespace_id, 0, -1)
for _, data in ipairs(hl) do
api.nvim_buf_add_highlight(bufnr, namespace_id, data[1], data[2], data[3], data[4])