diff --git a/src/proto/version.pro b/src/proto/version.pro
index 3f371f9..e6fb78f 100644
--- a/src/proto/version.pro
+++ b/src/proto/version.pro
@@ -4,6 +4,7 @@
 int has_patch __ARGS((int n));
 void ex_version __ARGS((exarg_T *eap));
 void list_version __ARGS((void));
+void maybe_intro_message __ARGS((void));
 void intro_message __ARGS((int colon));
 void ex_intro __ARGS((exarg_T *eap));
 /* vim: set ft=c : */
diff --git a/src/screen.c b/src/screen.c
index d68a84b..e5636ad 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -389,7 +389,6 @@
 	    }
 	    ret = 4;
 	}
-	setcursor();
     }
 
     vim_free(screenline);
@@ -405,6 +404,11 @@
 	vim_free(screenline2);
 #endif
 
+    /* Show the intro message when appropriate. */
+    maybe_intro_message();
+
+    setcursor();
+
     return ret;
 }
 
@@ -715,13 +719,8 @@
 	showmode();
 
     /* May put up an introductory message when not editing a file */
-    if (!did_intro && bufempty()
-	    && curbuf->b_fname == NULL
-#ifdef FEAT_WINDOWS
-	    && firstwin->w_next == NULL
-#endif
-	    && vim_strchr(p_shm, SHM_INTRO) == NULL)
-	intro_message(FALSE);
+    if (!did_intro)
+	maybe_intro_message();
     did_intro = TRUE;
 
 #ifdef FEAT_GUI
diff --git a/src/version.c b/src/version.c
index 1122506..182ca01 100644
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1306,
+/**/
     1305,
 /**/
     1304,
@@ -3777,6 +3779,21 @@
 static void do_intro_line __ARGS((int row, char_u *mesg, int add_version, int attr));
 
 /*
+ * Show the intro message when not editing a file.
+ */
+    void
+maybe_intro_message()
+{
+    if (bufempty()
+	    && curbuf->b_fname == NULL
+#ifdef FEAT_WINDOWS
+	    && firstwin->w_next == NULL
+#endif
+	    && vim_strchr(p_shm, SHM_INTRO) == NULL)
+	intro_message(FALSE);
+}
+
+/*
  * Give an introductory message about Vim.
  * Only used when starting Vim on an empty file, without a file name.
  * Or with the ":intro" command (for Sven :-).
