From a9a6493b1eeba458757903352e0d3dc4b54fd4f2 Mon Sep 17 00:00:00 2001 From: ray-x Date: Sat, 6 Aug 2022 18:51:53 +1000 Subject: nil check for lines --- lua/nvim-treesitter/ts_utils.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lua/nvim-treesitter') diff --git a/lua/nvim-treesitter/ts_utils.lua b/lua/nvim-treesitter/ts_utils.lua index f5ad3354..5994e4bc 100644 --- a/lua/nvim-treesitter/ts_utils.lua +++ b/lua/nvim-treesitter/ts_utils.lua @@ -6,7 +6,7 @@ local utils = require "nvim-treesitter.utils" local M = {} local function get_node_text(node, bufnr) - local bufnr = bufnr or api.nvim_get_current_buf() + bufnr = bufnr or api.nvim_get_current_buf() if not node then return {} end @@ -16,6 +16,9 @@ local function get_node_text(node, bufnr) if start_row ~= end_row then local lines = api.nvim_buf_get_lines(bufnr, start_row, end_row + 1, false) + if next(lines) == nil then + return {} + end lines[1] = string.sub(lines[1], start_col + 1) -- end_row might be just after the last line. In this case the last line is not truncated. if #lines == end_row - start_row + 1 then -- cgit v1.2.3