diff options
author | Sean Dewar <seandewar@users.noreply.github.com> | 2022-02-03 16:44:42 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-03 16:44:42 +0000 |
commit | 9efdd927ff50f22e623133976ddd57538f9cd491 (patch) | |
tree | 78afdbf98bb5e265f5a17f9551d77b17f677264f /src/nvim/api/private/helpers.c | |
parent | f5c4c1d7684d9d39dd469e10322ce6a5df5c3281 (diff) | |
parent | 452b46fcf79de52317e2c41adb083d461a93ace5 (diff) | |
download | rneovim-9efdd927ff50f22e623133976ddd57538f9cd491.tar.gz rneovim-9efdd927ff50f22e623133976ddd57538f9cd491.tar.bz2 rneovim-9efdd927ff50f22e623133976ddd57538f9cd491.zip |
Merge pull request #16976 from seandewar/vim-8.2.4018
vim-patch:8.2.{4018,4026,4028} & `nvim_win_call` fixes
Diffstat (limited to 'src/nvim/api/private/helpers.c')
-rw-r--r-- | src/nvim/api/private/helpers.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/nvim/api/private/helpers.c b/src/nvim/api/private/helpers.c index 4ddd90f3c9..ddcfff0097 100644 --- a/src/nvim/api/private/helpers.c +++ b/src/nvim/api/private/helpers.c @@ -989,18 +989,16 @@ Object copy_object(Object obj) static void set_option_value_for(char *key, int numval, char *stringval, int opt_flags, int opt_type, void *from, Error *err) { - win_T *save_curwin = NULL; - tabpage_T *save_curtab = NULL; + switchwin_T switchwin; aco_save_T aco; try_start(); switch (opt_type) { case SREQ_WIN: - if (switch_win_noblock(&save_curwin, &save_curtab, (win_T *)from, - win_find_tabpage((win_T *)from), true) + if (switch_win_noblock(&switchwin, (win_T *)from, win_find_tabpage((win_T *)from), true) == FAIL) { - restore_win_noblock(save_curwin, save_curtab, true); + restore_win_noblock(&switchwin, true); if (try_end(err)) { return; } @@ -1010,7 +1008,7 @@ static void set_option_value_for(char *key, int numval, char *stringval, int opt return; } set_option_value_err(key, numval, stringval, opt_flags, err); - restore_win_noblock(save_curwin, save_curtab, true); + restore_win_noblock(&switchwin, true); break; case SREQ_BUF: aucmd_prepbuf(&aco, (buf_T *)from); |