diff --git a/ChangeLog b/ChangeLog
index 2edc3078596d0d2b0d6b973bb14fb9a9e7626732..a40a749e126a4632b2c364f0e9c50861abf3046d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -218,8 +218,9 @@ CVS code -
 	  unnecessary update, and remove an unneeded clearok(FALSE).
 	  (DLR)
   do_spell()
-	- If the spell-checker printed any error messages onscreen, make
-	  sure they're cleared off. (DLR, found by CHAO Wei-Lun)
+	- If the spell-checker printed any error messages onscreen, call
+	  total_refresh() to make sure they're cleared off. (DLR, found
+	  by CHAO Wei-Lun)
   do_output()
 	- Properly allow wrapping when we insert a tab, for consistency.
 	  (DLR)
@@ -298,11 +299,11 @@ CVS code -
 	  consistency. (DLR)
 	- Rename variables def and ret to curranswer and retval to avoid
 	  confusion. (DLR)
-	- Call wrefresh(bottomwin) after getting an answer and blanking
-	  out the statusbar, to make sure that the blanking is done.
-	  This fixes a problem where the statusbar is not properly
-	  blanked after using the "Go To Line" prompt with the NO_HELP
-	  flag set. (DLR)
+	- Call wnoutrefresh(bottomwin) and reset_cursor() after getting
+	  an answer and blanking out the statusbar, to make sure that
+	  the blanking is done.  This fixes a problem where the
+	  statusbar is not properly blanked after using the "Go To Line"
+	  prompt with the NO_HELP flag set. (DLR)
   do_help()
 	- Don't treat NANO_CANCEL_KEY as NANO_EXIT_KEY anymore, for
 	  consistency. (DLR)
diff --git a/src/nano.c b/src/nano.c
index c1dc528db8baaf8460a5aabbc68304491363d9d7..655b59eb68573df12d23a37dd369a7d92ea309a6 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -2509,7 +2509,7 @@ void do_spell(void)
 
     /* If the spell-checker printed any error messages onscreen, make
      * sure they're cleared off. */
-    total_update();
+    total_refresh();
 
     if (spell_msg != NULL)
 	statusbar(_("Spell checking failed: %s: %s"), spell_msg,
diff --git a/src/winio.c b/src/winio.c
index c2e3f2225373dcd1272e085e0b87491a16411d4a..bb35635522b478e8efe056b081ce0b0ad5d6ec3a 100644
--- a/src/winio.c
+++ b/src/winio.c
@@ -2659,7 +2659,8 @@ int statusq(bool allow_tabs, const shortcut *s, const char *curranswer,
     }
 
     blank_statusbar();
-    wrefresh(bottomwin);
+    wnoutrefresh(bottomwin);
+    reset_cursor();
 
 #ifdef DEBUG
     fprintf(stderr, "answer = \"%s\"\n", answer);