changeset 5126:71859e71b1f9 v7.3.1306

updated for version 7.3.1306 Problem: When redrawing the screen during startup the intro message may be cleared. Solution: Redisplay the intro message when appropriate.
author Bram Moolenaar <bram@vim.org>
date Thu, 04 Jul 2013 22:31:03 +0200
parents 22e755cc75c0
children 053a3d1ebc58
files src/proto/version.pro src/screen.c src/version.c
diffstat 3 files changed, 25 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/proto/version.pro
+++ b/src/proto/version.pro
@@ -4,6 +4,7 @@ int highest_patch __ARGS((void));
 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 : */
--- a/src/screen.c
+++ b/src/screen.c
@@ -389,7 +389,6 @@ redraw_asap(type)
 	    }
 	    ret = 4;
 	}
-	setcursor();
     }
 
     vim_free(screenline);
@@ -405,6 +404,11 @@ redraw_asap(type)
 	vim_free(screenline2);
 #endif
 
+    /* Show the intro message when appropriate. */
+    maybe_intro_message();
+
+    setcursor();
+
     return ret;
 }
 
@@ -715,13 +719,8 @@ update_screen(type)
 	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
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1306,
+/**/
     1305,
 /**/
     1304,
@@ -3777,6 +3779,21 @@ version_msg(s)
 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 :-).