Skip to content

Commit 6238235

Browse files
committed
fix(manager): keep cwd from leaking across tabs in refresh
1 parent 76ef029 commit 6238235

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

lua/neo-tree/events/queue.lua

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,10 @@ local fire_event_internal = function(event, args)
103103
if queue == nil then
104104
return nil
105105
end
106-
log.trace("Firing event: ", event, " with args: ", args)
106+
--log.trace("Firing event: ", event, " with args: ", args)
107107

108108
if queue:is_empty() then
109-
log.trace("Event queue is empty")
109+
--log.trace("Event queue is empty")
110110
return nil
111111
end
112112
local seed = utils.get_value(event_definitions, event .. ".seed")

lua/neo-tree/sources/filesystem/init.lua

+2
Original file line numberDiff line numberDiff line change
@@ -112,9 +112,11 @@ local navigate_internal = function(path, path_to_reveal, callback)
112112
state.dirty = false
113113
local path_changed = false
114114
if path == nil then
115+
log.debug("navigate_internal: path is nil, using cwd")
115116
path = vim.fn.getcwd()
116117
end
117118
if path ~= state.path then
119+
log.debug("navigate_internal: path changed from ", state.path, " to ", path)
118120
state.path = path
119121
path_changed = true
120122
end

lua/neo-tree/sources/manager.lua

+2-1
Original file line numberDiff line numberDiff line change
@@ -290,9 +290,10 @@ end
290290
---Refreshes the tree by scanning the filesystem again.
291291
M.refresh = function(source_name, callback)
292292
log.trace(source_name, " refresh")
293+
local current_tabnr = vim.api.nvim_get_current_tabpage()
293294
local sd = get_source_data(source_name)
294295
for _, state in pairs(sd.state_by_tab) do
295-
if state.path and renderer.window_exists(state) then
296+
if state.tabnr == current_tabnr and state.path and renderer.window_exists(state) then
296297
if type(callback) ~= "function" then
297298
callback = nil
298299
end

0 commit comments

Comments
 (0)