fix: Add nil checks for state when preview hasn't been initialized yet (#92)
This commit is contained in:
@@ -103,17 +103,35 @@ previewers.new_termopen_previewer = function(opts)
|
||||
|
||||
local old_bufs = {}
|
||||
|
||||
local function get_term_id(self) return self.state.termopen_id end
|
||||
local function get_bufnr(self) return self.state.termopen_bufnr end
|
||||
local function get_term_id(self)
|
||||
if not self.state then
|
||||
return nil
|
||||
end
|
||||
|
||||
return self.state.termopen_id
|
||||
end
|
||||
local function get_bufnr(self)
|
||||
if not self.state then
|
||||
return nil
|
||||
end
|
||||
return self.state.termopen_bufnr
|
||||
end
|
||||
|
||||
local function set_term_id(self, value)
|
||||
if job_is_running(get_term_id(self)) then vim.fn.jobstop(get_term_id(self)) end
|
||||
if job_is_running(get_term_id(self)) then
|
||||
vim.fn.jobstop(get_term_id(self))
|
||||
end
|
||||
|
||||
if self.state then
|
||||
self.state.termopen_id = value
|
||||
end
|
||||
end
|
||||
local function set_bufnr(self, value)
|
||||
if get_bufnr(self) then table.insert(old_bufs, get_bufnr(self)) end
|
||||
if self.state then
|
||||
self.state.termopen_bufnr = value
|
||||
end
|
||||
end
|
||||
|
||||
local function setup(self)
|
||||
local state = {}
|
||||
@@ -140,6 +158,7 @@ previewers.new_termopen_previewer = function(opts)
|
||||
for _, bufnr in ipairs(old_bufs) do
|
||||
buf_delete(bufnr)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
local function preview_fn(self, entry, status)
|
||||
|
||||
Reference in New Issue
Block a user