diff options
author | Wayne Rowcliffe <war1025@gmail.com> | 2014-08-23 12:03:14 -0500 |
---|---|---|
committer | Wayne Rowcliffe <war1025@gmail.com> | 2014-09-22 09:31:09 -0500 |
commit | 683bc797a0d427d818f69dd4772e149cf94e6b12 (patch) | |
tree | 8bc73873f033b5a37696168c0ddc165869822770 /src/nvim/api | |
parent | b4ec6c1a4bacd6eaef958e242310ffaee94805dd (diff) | |
download | rneovim-683bc797a0d427d818f69dd4772e149cf94e6b12.tar.gz rneovim-683bc797a0d427d818f69dd4772e149cf94e6b12.tar.bz2 rneovim-683bc797a0d427d818f69dd4772e149cf94e6b12.zip |
FOR_ALL_WINDOWS_IN_TAB and local variables in FOR_ALL_TAB_WINDOWS
Diffstat (limited to 'src/nvim/api')
-rw-r--r-- | src/nvim/api/tabpage.c | 25 | ||||
-rw-r--r-- | src/nvim/api/vim.c | 2 |
2 files changed, 7 insertions, 20 deletions
diff --git a/src/nvim/api/tabpage.c b/src/nvim/api/tabpage.c index 72168d936a..3e5d00671a 100644 --- a/src/nvim/api/tabpage.c +++ b/src/nvim/api/tabpage.c @@ -7,6 +7,7 @@ #include "nvim/api/private/defs.h" #include "nvim/api/private/helpers.h" #include "nvim/memory.h" +#include "nvim/window.h" /// Gets the number of windows in a tabpage /// @@ -18,27 +19,18 @@ ArrayOf(Window) tabpage_get_windows(Tabpage tabpage, Error *err) Array rv = ARRAY_DICT_INIT; tabpage_T *tab = find_tab_by_handle(tabpage, err); - if (!tab) { + if (!tab || !valid_tabpage(tab)) { return rv; } - tabpage_T *tp; - win_T *wp; - - FOR_ALL_TAB_WINDOWS(tp, wp) { - if (tp != tab) { - break; - } + FOR_ALL_WINDOWS_IN_TAB(wp, tab) { rv.size++; } rv.items = xmalloc(sizeof(Object) * rv.size); size_t i = 0; - FOR_ALL_TAB_WINDOWS(tp, wp) { - if (tp != tab) { - break; - } + FOR_ALL_WINDOWS_IN_TAB(wp, tab) { rv.items[i++] = WINDOW_OBJ(wp->handle); } @@ -90,18 +82,15 @@ Window tabpage_get_window(Tabpage tabpage, Error *err) Window rv = 0; tabpage_T *tab = find_tab_by_handle(tabpage, err); - if (!tab) { + if (!tab || !valid_tabpage(tab)) { return rv; } if (tab == curtab) { return vim_get_current_window(); } else { - tabpage_T *tp; - win_T *wp; - - FOR_ALL_TAB_WINDOWS(tp, wp) { - if (tp == tab && wp == tab->tp_curwin) { + FOR_ALL_WINDOWS_IN_TAB(wp, tab) { + if (wp == tab->tp_curwin) { return wp->handle; } } diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c index 93aa0439f0..5e0f3e0c32 100644 --- a/src/nvim/api/vim.c +++ b/src/nvim/api/vim.c @@ -380,8 +380,6 @@ void vim_set_current_buffer(Buffer buffer, Error *err) ArrayOf(Window) vim_get_windows(void) { Array rv = ARRAY_DICT_INIT; - tabpage_T *tp; - win_T *wp; FOR_ALL_TAB_WINDOWS(tp, wp) { rv.size++; |