diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/api/extmark.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/nvim/api/extmark.c b/src/nvim/api/extmark.c index 23a42798d9..5dcda42b02 100644 --- a/src/nvim/api/extmark.c +++ b/src/nvim/api/extmark.c @@ -1254,18 +1254,18 @@ Boolean nvim_win_add_ns(Window window, Integer ns_id, Error *err) /// /// @param window Window handle, or 0 for current window /// @return a list of namespaces ids -ArrayOf(Integer) nvim_win_get_ns(Window window, Error *err) +ArrayOf(Integer) nvim_win_get_ns(Window window, Arena *arena, Error *err) FUNC_API_SINCE(12) { - Array rv = ARRAY_DICT_INIT; - win_T *win = find_window_by_handle(window, err); if (!win) { - return rv; + return (Array)ARRAY_DICT_INIT; } + + Array rv = arena_array(arena, set_size(&win->w_ns_set)); uint32_t i; set_foreach(&win->w_ns_set, i, { - ADD(rv, INTEGER_OBJ((Integer)(i))); + ADD_C(rv, INTEGER_OBJ((Integer)(i))); }); return rv; @@ -1288,7 +1288,7 @@ Boolean nvim_win_remove_ns(Window window, Integer ns_id, Error *err) return false; } - set_del_uint32_t(&win->w_ns_set, (uint32_t)ns_id); + set_del(uint32_t, &win->w_ns_set, (uint32_t)ns_id); changed_window_setting_win(win); |