aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api/tabpage.c
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2024-02-19 21:21:05 +0100
committerGitHub <noreply@github.com>2024-02-19 21:21:05 +0100
commit8952a89db588db10a9dba16356f9bbd35ca5fabb (patch)
treeac34d55b77303deadef6a7ed3f4202259324a249 /src/nvim/api/tabpage.c
parent8fdc84d0aaec63d57203bdef4b88047479ad4fc1 (diff)
parent404707c7606389ccb6c6062bfe9e2ff30a2552af (diff)
downloadrneovim-8952a89db588db10a9dba16356f9bbd35ca5fabb.tar.gz
rneovim-8952a89db588db10a9dba16356f9bbd35ca5fabb.tar.bz2
rneovim-8952a89db588db10a9dba16356f9bbd35ca5fabb.zip
Merge pull request #27534 from bfredl/userarena
refactor(api): next PR to make use of the arena
Diffstat (limited to 'src/nvim/api/tabpage.c')
-rw-r--r--src/nvim/api/tabpage.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/nvim/api/tabpage.c b/src/nvim/api/tabpage.c
index 109075df8e..040abb1e3f 100644
--- a/src/nvim/api/tabpage.c
+++ b/src/nvim/api/tabpage.c
@@ -19,7 +19,7 @@
/// @param tabpage Tabpage handle, or 0 for current tabpage
/// @param[out] err Error details, if any
/// @return List of windows in `tabpage`
-ArrayOf(Window) nvim_tabpage_list_wins(Tabpage tabpage, Error *err)
+ArrayOf(Window) nvim_tabpage_list_wins(Tabpage tabpage, Arena *arena, Error *err)
FUNC_API_SINCE(1)
{
Array rv = ARRAY_DICT_INIT;
@@ -29,15 +29,15 @@ ArrayOf(Window) nvim_tabpage_list_wins(Tabpage tabpage, Error *err)
return rv;
}
+ size_t n = 0;
FOR_ALL_WINDOWS_IN_TAB(wp, tab) {
- rv.size++;
+ n++;
}
- rv.items = xmalloc(sizeof(Object) * rv.size);
- size_t i = 0;
+ rv = arena_array(arena, n);
FOR_ALL_WINDOWS_IN_TAB(wp, tab) {
- rv.items[i++] = WINDOW_OBJ(wp->handle);
+ ADD_C(rv, WINDOW_OBJ(wp->handle));
}
return rv;