patch 8.1.1425: win_execute() does not set window pointers properly
Problem: Win_execute() does not set window pointers properly.
Solution: Use switch_win_noblock(). Also execute autocommands in a popup
window.
diff --git a/src/proto/window.pro b/src/proto/window.pro
index b5cbf69..1424c3d 100644
--- a/src/proto/window.pro
+++ b/src/proto/window.pro
@@ -77,7 +77,9 @@
void make_snapshot(int idx);
void restore_snapshot(int idx, int close_curwin);
int switch_win(win_T **save_curwin, tabpage_T **save_curtab, win_T *win, tabpage_T *tp, int no_display);
+int switch_win_noblock(win_T **save_curwin, tabpage_T **save_curtab, win_T *win, tabpage_T *tp, int no_display);
void restore_win(win_T *save_curwin, tabpage_T *save_curtab, int no_display);
+void restore_win_noblock(win_T *save_curwin, tabpage_T *save_curtab, int no_display);
void switch_buffer(bufref_T *save_curbuf, buf_T *buf);
void restore_buffer(bufref_T *save_curbuf);
int win_hasvertsplit(void);