diff --git a/src/testdir/test_winbuf_close.vim b/src/testdir/test_winbuf_close.vim
index ee43540..7f5b80e 100644
--- a/src/testdir/test_winbuf_close.vim
+++ b/src/testdir/test_winbuf_close.vim
@@ -160,7 +160,7 @@
 endfunction
 
 " Test that 'winfixheight' will be respected even there is non-leaf frame
-fun! Test_winfixheight_non_leaf_frame()
+func Test_winfixheight_non_leaf_frame()
   vsplit
   botright 11new
   let l:wid = win_getid()
@@ -173,7 +173,7 @@
 endf
 
 " Test that 'winfixwidth' will be respected even there is non-leaf frame
-fun! Test_winfixwidth_non_leaf_frame()
+func Test_winfixwidth_non_leaf_frame()
   split
   topleft 11vnew
   let l:wid = win_getid()
@@ -184,3 +184,13 @@
   call assert_equal(11, winwidth(l:wid))
   %bwipe!
 endf
+
+func Test_tabwin_close()
+  enew
+  let l:wid = win_getid()
+  tabedit
+  call win_execute(l:wid, 'close')
+  " Should not crash.
+  call assert_true(v:true)
+  %bwipe!
+endfunc
diff --git a/src/version.c b/src/version.c
index c23426b..6a1702e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    137,
+/**/
     136,
 /**/
     135,
diff --git a/src/window.c b/src/window.c
index 1096b60..0c3c7f6 100644
--- a/src/window.c
+++ b/src/window.c
@@ -3616,6 +3616,9 @@
 	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 @@
 	    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);
