diff --git a/lua/pending/buffer.lua b/lua/pending/buffer.lua index 7f13558..3d29128 100644 --- a/lua/pending/buffer.lua +++ b/lua/pending/buffer.lua @@ -275,21 +275,19 @@ local function snapshot_folds(bufnr) return end for _, winid in ipairs(vim.fn.win_findbuf(bufnr)) do - if _fold_state[winid] ~= nil then - goto continue - end - local state = {} - vim.api.nvim_win_call(winid, function() - for lnum, m in ipairs(_meta) do - if m.type == 'header' and m.category then - if vim.fn.foldclosed(lnum) ~= -1 then - state[m.category] = true + if _fold_state[winid] == nil then + local state = {} + vim.api.nvim_win_call(winid, function() + for lnum, m in ipairs(_meta) do + if m.type == 'header' and m.category then + if vim.fn.foldclosed(lnum) ~= -1 then + state[m.category] = true + end end end - end - end) - _fold_state[winid] = state - ::continue:: + end) + _fold_state[winid] = state + end end end