diff --git a/src/ex_getln.c b/src/ex_getln.c
index d3119ba..72f2a3a 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -393,6 +393,7 @@
 	magic_overruled = is_state->magic_overruled_save;
 
 	validate_cursor();	// needed for TAB
+	status_redraw_all();
 	redraw_all_later(UPD_SOME_VALID);
 	if (call_update_screen)
 	    update_screen(UPD_SOME_VALID);
@@ -559,6 +560,7 @@
     }
 
     validate_cursor();
+
     // May redraw the status line to show the cursor position.
     if (p_ru && curwin->w_status_height > 0)
 	curwin->w_redr_status = TRUE;
diff --git a/src/move.c b/src/move.c
index e255bd6..3a5f806 100644
--- a/src/move.c
+++ b/src/move.c
@@ -202,6 +202,23 @@
 #endif
 
 /*
+ * Set curwin->s_skipcol to zero and redraw later if needed.
+ */
+    static void
+reset_skipcol(void)
+{
+    if (curwin->w_skipcol != 0)
+    {
+	curwin->w_skipcol = 0;
+
+	// Should use the least expensive way that displays all that changed.
+	// UPD_NOT_VALID is too expensive, UPD_REDRAW_TOP does not redraw
+	// enough when the top line gets another screen line.
+	redraw_later(UPD_SOME_VALID);
+    }
+}
+
+/*
  * Update curwin->w_topline and redraw if necessary.
  * Used to update the screen before printing a message.
  */
@@ -458,13 +475,9 @@
 	    )
     {
 	dollar_vcol = -1;
-	if (curwin->w_skipcol != 0)
-	{
-	    curwin->w_skipcol = 0;
-	    redraw_later(UPD_NOT_VALID);
-	}
-	else
-	    redraw_later(UPD_VALID);
+	redraw_later(UPD_VALID);
+	reset_skipcol();
+
 	// May need to set w_skipcol when cursor in w_topline.
 	if (curwin->w_cursor.lnum == curwin->w_topline)
 	    validate_cursor();
@@ -1319,7 +1332,7 @@
     else if (!curwin->w_p_sms)
 	curwin->w_skipcol = 0;
     if (prev_skipcol != curwin->w_skipcol)
-	redraw_later(UPD_NOT_VALID);
+	redraw_later(UPD_SOME_VALID);
 
 #ifdef FEAT_SYN_HL
     redraw_for_cursorcolumn(curwin);
@@ -1849,11 +1862,7 @@
     if (curwin->w_cline_height == curwin->w_height)
     {
 	// the line just fits in the window, don't scroll
-	if (curwin->w_skipcol != 0)
-	{
-	    curwin->w_skipcol = 0;
-	    redraw_later(UPD_NOT_VALID);
-	}
+	reset_skipcol();
 	return;
     }
 
@@ -2302,10 +2311,7 @@
 #endif
 	// TODO: if the line doesn't fit may optimize w_skipcol
 	if (curwin->w_topline == curwin->w_cursor.lnum)
-	{
-	    curwin->w_skipcol = 0;
-	    redraw_later(UPD_NOT_VALID);
-	}
+	    reset_skipcol();
 	if (curwin->w_topline != old_topline
 		|| curwin->w_skipcol != old_skipcol
 #ifdef FEAT_DIFF
@@ -2737,7 +2743,7 @@
 	if (curwin->w_cline_height == curwin->w_height)
 	{
 	    // The cursor line just fits in the window, don't scroll.
-	    curwin->w_skipcol = 0;
+	    reset_skipcol();
 	    return;
 	}
 	// TODO: If the cursor line doesn't fit in the window then only adjust
diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak
index 04ccb48..1ac29b1 100644
--- a/src/testdir/Make_all.mak
+++ b/src/testdir/Make_all.mak
@@ -484,6 +484,7 @@
 	test_retab.res \
 	test_ruby.res \
 	test_scriptnames.res \
+	test_scroll_opt.res \
 	test_scrollbind.res \
 	test_search.res \
 	test_search_stat.res \
diff --git a/src/testdir/test_alot.vim b/src/testdir/test_alot.vim
index b7b7ead..592ca65 100644
--- a/src/testdir/test_alot.vim
+++ b/src/testdir/test_alot.vim
@@ -19,7 +19,6 @@
 source test_move.vim
 source test_put.vim
 source test_reltime.vim
-source test_scroll_opt.vim
 source test_searchpos.vim
 source test_set.vim
 source test_shift.vim
diff --git a/src/version.c b/src/version.c
index 0423d0d..b526652 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    892,
+/**/
     891,
 /**/
     890,
