From 50e5e86ac37ee3989a0015d3934c5a961012990a Mon Sep 17 00:00:00 2001 From: fdschmidt93 <39233597+fdschmidt93@users.noreply.github.com> Date: Mon, 23 Aug 2021 20:20:41 +0200 Subject: [PATCH] fix: safer teardown of buffer previewer (#1158) --- lua/telescope/previewers/buffer_previewer.lua | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/lua/telescope/previewers/buffer_previewer.lua b/lua/telescope/previewers/buffer_previewer.lua index 3ba7bac..1c393f5 100644 --- a/lua/telescope/previewers/buffer_previewer.lua +++ b/lua/telescope/previewers/buffer_previewer.lua @@ -921,15 +921,17 @@ previewers.buffers = defaulter(function(opts) return state end, teardown = function(self) - -- reapply proper buffer-window options.. - for opt, value in pairs(self.state.win_options) do - vim.api.nvim_win_set_option(self.state.winid, opt, value) - end - -- TODO precautious clearing of extmark though likely no effect due to ephemeral - -- clear extmarks for previewed buffers - for buf, _ in pairs(self.state.previewed_buffers) do - if vim.api.nvim_buf_is_valid(buf) then - vim.api.nvim_buf_clear_namespace(buf, ns_previewer, 0, -1) + if self.state then + -- reapply proper buffer-window options.. + for opt, value in pairs(self.state.win_options) do + vim.api.nvim_win_set_option(self.state.winid, opt, value) + end + -- TODO precautious clearing of extmark though likely no effect due to ephemeral + -- clear extmarks for previewed buffers + for buf, _ in pairs(self.state.previewed_buffers) do + if vim.api.nvim_buf_is_valid(buf) then + vim.api.nvim_buf_clear_namespace(buf, ns_previewer, 0, -1) + end end end previewer_active = false