aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/treesitter/_fold.lua
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-03-13 10:44:43 +0000
committerGitHub <noreply@github.com>2023-03-13 10:44:43 +0000
commit35799a6629f10cc49e79381e61038b3a4ca3bb23 (patch)
tree995450384cae680518d4d7cf565e5e5b2caf3a53 /runtime/lua/vim/treesitter/_fold.lua
parent773febc46087b5b38c1923389667b1513a78c089 (diff)
downloadrneovim-35799a6629f10cc49e79381e61038b3a4ca3bb23.tar.gz
rneovim-35799a6629f10cc49e79381e61038b3a4ca3bb23.tar.bz2
rneovim-35799a6629f10cc49e79381e61038b3a4ca3bb23.zip
fix(treesitter): foldexpr (#22652)
The ranges passed to foldinfo.remove_range were in the wrong order.
Diffstat (limited to 'runtime/lua/vim/treesitter/_fold.lua')
-rw-r--r--runtime/lua/vim/treesitter/_fold.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/runtime/lua/vim/treesitter/_fold.lua b/runtime/lua/vim/treesitter/_fold.lua
index fd2c707d17..90f4394fcc 100644
--- a/runtime/lua/vim/treesitter/_fold.lua
+++ b/runtime/lua/vim/treesitter/_fold.lua
@@ -200,8 +200,9 @@ end
local function on_bytes(bufnr, foldinfo, start_row, old_row, new_row)
local end_row_old = start_row + old_row
local end_row_new = start_row + new_row
+
if new_row < old_row then
- foldinfo:remove_range(end_row_old, end_row_new)
+ foldinfo:remove_range(end_row_new, end_row_old)
elseif new_row > old_row then
foldinfo:add_range(start_row, end_row_new)
vim.schedule(function()