diff options
author | bfredl <bjorn.linse@gmail.com> | 2024-02-10 13:13:52 +0100 |
---|---|---|
committer | bfredl <bjorn.linse@gmail.com> | 2024-02-11 11:37:55 +0100 |
commit | 930d6e38d4eb61adbb4f0d7328f55b31408b7cd1 (patch) | |
tree | 3467ab61eded7dc613ee9ba7b83198088e659870 /src/nvim/api/deprecated.c | |
parent | ca258db15668242c50a0529111398f53e4e01619 (diff) | |
download | rneovim-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.c | 9 |
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 |