diff --git a/src/winio.c b/src/winio.c
index c26a2ff5bfc51a90d9e3887a55791bb2ed1cf5ac..78e6f49e44cf4963f0a99693e380461d44a60d7a 100644
--- a/src/winio.c
+++ b/src/winio.c
@@ -2287,6 +2287,12 @@ void reset_cursor(void)
 	/* Add the number of wraps in the current line before the cursor. */
 	row += xpt / editwincols;
 	col = xpt % editwincols;
+
+	/* If the cursor ought to be in column zero, nudge it there. */
+	if (openfile->placewewant % editwincols == 0 && col != 0) {
+	    row++;
+	    col = 0;
+	}
     } else
 #endif
     {