api/window: use the "noblock" variants in nvim_win_set_buf

after commit 92c6383cdca977("vim-patch:8.1.1425: win_execute() does not set window pointers properly"),
nvim_win_set_buf can use switch_win_noblock and restore_win_noblock.
It makes nvim_win_set_buf don't block autocmds so that it will be more
"without side-effects" as said in help text.

Signed-off-by: jing <lhchenjw@gmail.com>
This commit is contained in:
jing 2021-01-09 13:15:23 +08:00
parent 03b3ff8610
commit 1def3d1542

View File

@ -54,7 +54,7 @@ void nvim_win_set_buf(Window window, Buffer buffer, Error *err)
return;
}
if (switch_win(&save_curwin, &save_curtab, win, tab, false) == FAIL) {
if (switch_win_noblock(&save_curwin, &save_curtab, win, tab, false) == FAIL) {
api_set_error(err,
kErrorTypeException,
"Failed to switch to window %d",
@ -74,7 +74,7 @@ void nvim_win_set_buf(Window window, Buffer buffer, Error *err)
// So do it now.
validate_cursor();
restore_win(save_curwin, save_curtab, false);
restore_win_noblock(save_curwin, save_curtab, false);
}
/// Gets the (1,0)-indexed cursor position in the window. |api-indexing|