diff src/window.c @ 19155:013f20a3bc6b v8.2.0137

patch 8.2.0137: crash when using win_execute() from a new tab Commit: https://github.com/vim/vim/commit/a44b3eeafa57d4904a3de86b132008b93404f0fd Author: Bram Moolenaar <Bram@vim.org> Date: Mon Jan 20 21:44:31 2020 +0100 patch 8.2.0137: crash when using win_execute() from a new tab Problem: Crash when using win_execute() from a new tab. Solution: Set the tp_*win pointers. (Ozaki Kiichi, closes https://github.com/vim/vim/issues/5512)
author Bram Moolenaar <Bram@vim.org>
date Mon, 20 Jan 2020 21:45:04 +0100
parents bfcafd1a3e37
children 215793f6b59d
line wrap: on
line diff
--- a/src/window.c
+++ b/src/window.c
@@ -3616,6 +3616,9 @@ win_alloc_first(void)
 	return FAIL;
     first_tabpage->tp_topframe = topframe;
     curtab = first_tabpage;
+    curtab->tp_firstwin = firstwin;
+    curtab->tp_lastwin = lastwin;
+    curtab->tp_curwin = curwin;
 
     return OK;
 }
@@ -3854,6 +3857,8 @@ win_new_tabpage(int after)
 	    newtp->tp_next = tp->tp_next;
 	    tp->tp_next = newtp;
 	}
+	newtp->tp_firstwin = newtp->tp_lastwin = newtp->tp_curwin = curwin;
+
 	win_init_size();
 	firstwin->w_winrow = tabline_height();
 	win_comp_scroll(curwin);