diff --git a/src/version.c b/src/version.c
index 163c852..c64fe95 100644
--- a/src/version.c
+++ b/src/version.c
@@ -682,6 +682,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    398,
+/**/
     397,
 /**/
     396,
diff --git a/src/window.c b/src/window.c
index 0845768..cc114cc 100644
--- a/src/window.c
+++ b/src/window.c
@@ -991,28 +991,28 @@
 	wp->w_p_scr = curwin->w_p_scr;
 	if (need_status)
 	{
-	    --oldwin->w_height;
+	    win_new_height(oldwin, oldwin->w_height - 1);
 	    oldwin->w_status_height = need_status;
 	}
 	if (flags & (WSP_TOP | WSP_BOT))
 	{
 	    /* set height and row of new window to full height */
 	    wp->w_winrow = tabline_height();
-	    wp->w_height = curfrp->fr_height - (p_ls > 0);
+	    win_new_height(wp, curfrp->fr_height - (p_ls > 0));
 	    wp->w_status_height = (p_ls > 0);
 	}
 	else
 	{
 	    /* height and row of new window is same as current window */
 	    wp->w_winrow = oldwin->w_winrow;
-	    wp->w_height = oldwin->w_height;
+	    win_new_height(wp, oldwin->w_height);
 	    wp->w_status_height = oldwin->w_status_height;
 	}
 	frp->fr_height = curfrp->fr_height;
 
 	/* "new_size" of the current window goes to the new window, use
 	 * one column for the vertical separator */
-	wp->w_width = new_size;
+	win_new_width(wp, new_size);
 	if (before)
 	    wp->w_vsep_width = 1;
 	else
@@ -1049,13 +1049,13 @@
 	if (flags & (WSP_TOP | WSP_BOT))
 	{
 	    wp->w_wincol = 0;
-	    wp->w_width = Columns;
+	    win_new_width(wp, Columns);
 	    wp->w_vsep_width = 0;
 	}
 	else
 	{
 	    wp->w_wincol = oldwin->w_wincol;
-	    wp->w_width = oldwin->w_width;
+	    win_new_width(wp, oldwin->w_width);
 	    wp->w_vsep_width = oldwin->w_vsep_width;
 	}
 	frp->fr_width = curfrp->fr_width;
@@ -1111,7 +1111,7 @@
     }
 
     /*
-     * make the new window the current window and redraw
+     * equalize the window sizes.
      */
     if (do_equal || dir != 0)
 	win_equal(wp, TRUE,
@@ -1143,6 +1143,10 @@
 	if (size != 0)
 	    p_wh = size;
     }
+
+    /*
+     * make the new window the current window
+     */
     win_enter(wp, FALSE);
 #ifdef FEAT_VERTSPLIT
     if (flags & WSP_VERT)
