aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api/deprecated.c
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2024-02-10 13:13:52 +0100
committerbfredl <bjorn.linse@gmail.com>2024-02-11 11:37:55 +0100
commit930d6e38d4eb61adbb4f0d7328f55b31408b7cd1 (patch)
tree3467ab61eded7dc613ee9ba7b83198088e659870 /src/nvim/api/deprecated.c
parentca258db15668242c50a0529111398f53e4e01619 (diff)
downloadrneovim-930d6e38d4eb61adbb4f0d7328f55b31408b7cd1.tar.gz
rneovim-930d6e38d4eb61adbb4f0d7328f55b31408b7cd1.tar.bz2
rneovim-930d6e38d4eb61adbb4f0d7328f55b31408b7cd1.zip
refactor(api): use an arena for nvim_buf_get_lines and buffer updates
Refactor some earlier "temporary Array" code in buffer_updates.c to use the modern style of MAXSIZE_TEMP_ARRAY and ADD_C
Diffstat (limited to 'src/nvim/api/deprecated.c')
-rw-r--r--src/nvim/api/deprecated.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/nvim/api/deprecated.c b/src/nvim/api/deprecated.c
index 27f0589e53..dccaeb6922 100644
--- a/src/nvim/api/deprecated.c
+++ b/src/nvim/api/deprecated.c
@@ -245,20 +245,18 @@ void buffer_insert(Buffer buffer, Integer lnum, ArrayOf(String) lines, Error *er
/// @param index Line index
/// @param[out] err Error details, if any
/// @return Line string
-String buffer_get_line(Buffer buffer, Integer index, Error *err)
+String buffer_get_line(Buffer buffer, Integer index, Arena *arena, Error *err)
FUNC_API_DEPRECATED_SINCE(1)
{
String rv = { .size = 0 };
index = convert_index(index);
- Array slice = nvim_buf_get_lines(0, buffer, index, index + 1, true, NULL, err);
+ Array slice = nvim_buf_get_lines(0, buffer, index, index + 1, true, arena, NULL, err);
if (!ERROR_SET(err) && slice.size) {
rv = slice.items[0].data.string;
}
- xfree(slice.items);
-
return rv;
}
@@ -319,12 +317,13 @@ ArrayOf(String) buffer_get_line_slice(Buffer buffer,
Integer end,
Boolean include_start,
Boolean include_end,
+ Arena *arena,
Error *err)
FUNC_API_DEPRECATED_SINCE(1)
{
start = convert_index(start) + !include_start;
end = convert_index(end) + include_end;
- return nvim_buf_get_lines(0, buffer, start, end, false, NULL, err);
+ return nvim_buf_get_lines(0, buffer, start, end, false, arena, NULL, err);
}
/// Replaces a line range on the buffer