diff --git a/src/eval.c b/src/eval.c
index f9db2f9..b83334c 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -18601,6 +18601,10 @@
 	curwin->w_skipcol = get_dict_number(dict, (char_u *)"skipcol");
 
 	check_cursor();
+	win_new_height(curwin, curwin->w_height);
+# ifdef FEAT_VERTSPLIT
+	win_new_width(curwin, W_WIDTH(curwin));
+# endif
 	changed_window_setting();
 
 	if (curwin->w_topline == 0)
diff --git a/src/proto/window.pro b/src/proto/window.pro
index 847b64b..9222969 100644
--- a/src/proto/window.pro
+++ b/src/proto/window.pro
@@ -51,6 +51,8 @@
 void win_setminheight __ARGS((void));
 void win_drag_status_line __ARGS((win_T *dragwin, int offset));
 void win_drag_vsep_line __ARGS((win_T *dragwin, int offset));
+void win_new_height __ARGS((win_T *wp, int height));
+void win_new_width __ARGS((win_T *wp, int width));
 void win_comp_scroll __ARGS((win_T *wp));
 void command_height __ARGS((void));
 void last_status __ARGS((int morewin));
diff --git a/src/version.c b/src/version.c
index 5dd3776..c8a283e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    608,
+/**/
     607,
 /**/
     606,
diff --git a/src/window.c b/src/window.c
index c0b7b8b..e1dc940 100644
--- a/src/window.c
+++ b/src/window.c
@@ -54,7 +54,6 @@
 static void frame_insert __ARGS((frame_T *before, frame_T *frp));
 static void frame_remove __ARGS((frame_T *frp));
 #ifdef FEAT_VERTSPLIT
-static void win_new_width __ARGS((win_T *wp, int width));
 static void win_goto_ver __ARGS((int up, long count));
 static void win_goto_hor __ARGS((int left, long count));
 #endif
@@ -71,7 +70,6 @@
 
 static win_T *win_alloc __ARGS((win_T *after, int hidden));
 static void set_fraction __ARGS((win_T *wp));
-static void win_new_height __ARGS((win_T *wp, int height));
 
 #define URL_SLASH	1		/* path_is_url() has found "://" */
 #define URL_BACKSLASH	2		/* path_is_url() has found ":\\" */
@@ -5557,7 +5555,7 @@
  * This takes care of the things inside the window, not what happens to the
  * window position, the frame or to other windows.
  */
-    static void
+    void
 win_new_height(wp, height)
     win_T	*wp;
     int		height;
@@ -5697,7 +5695,7 @@
 /*
  * Set the width of a window.
  */
-    static void
+    void
 win_new_width(wp, width)
     win_T	*wp;
     int		width;
