patch 8.0.0486: crash and endless loop when closing windows in autocmd
Problem: Crash and endless loop when closing windows in a SessionLoadPost
autocommand.
Solution: Check for valid tabpage. (partly neovim #6308)
diff --git a/src/fileio.c b/src/fileio.c
index 32b2059..e743920 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -9033,6 +9033,11 @@
win_remove(curwin, NULL);
aucmd_win_used = FALSE;
last_status(FALSE); /* may need to remove last status line */
+
+ if (!valid_tabpage_win(curtab))
+ /* no valid window in current tabpage */
+ close_tabpage(curtab);
+
restore_snapshot(SNAP_AUCMD_IDX, FALSE);
(void)win_comp_pos(); /* recompute window positions */
unblock_autocmds();