changeset 4307:166b3df562ea v7.3.903

updated for version 7.3.903 Problem: Crash on exit writing viminfo. (Ron Aaron) Solution: Check for the history to be empty.
author Bram Moolenaar <bram@vim.org>
date Mon, 15 Apr 2013 16:14:22 +0200
parents 249bec0bf8dc
children 1afb71cd1663
files src/ex_getln.c src/version.c
diffstat 2 files changed, 11 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -6216,7 +6216,15 @@ write_viminfo_history(fp)
 	 */
 	for (round = 1; round <= 2; ++round)
 	{
-	    i = round == 1 ? hisidx[type] : 0;
+	    if (round == 1)
+		/* start at newest entry, somewhere in the list */
+		i = hisidx[type];
+	    else if (viminfo_hisidx[type] > 0)
+		/* start at newest entry, first in the list */
+		i = 0;
+	    else
+		/* empty list */
+		i = -1;
 	    if (i >= 0)
 		while (num_saved > 0
 			&& !(round == 2 && i >= viminfo_hisidx[type]))
--- 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 */
 /**/
+    903,
+/**/
     902,
 /**/
     901,