Mercurial > vim
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]))