diff options
author | bfredl <bjorn.linse@gmail.com> | 2024-02-19 21:21:05 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-19 21:21:05 +0100 |
commit | 8952a89db588db10a9dba16356f9bbd35ca5fabb (patch) | |
tree | ac34d55b77303deadef6a7ed3f4202259324a249 /src/nvim/api/tabpage.c | |
parent | 8fdc84d0aaec63d57203bdef4b88047479ad4fc1 (diff) | |
parent | 404707c7606389ccb6c6062bfe9e2ff30a2552af (diff) | |
download | rneovim-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.c | 10 |
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; |