patch 8.0.0039
Problem: When Vim 8 reads an old viminfo and exits, the next time marks are
not read from viminfo. (Ned Batchelder)
Solution: Set a mark when it wasn't set before, even when the timestamp is
zero. (closes #1170)
diff --git a/src/mark.c b/src/mark.c
index 0627a7c..9c84bc4 100644
--- a/src/mark.c
+++ b/src/mark.c
@@ -1597,7 +1597,8 @@
if (fm != NULL)
{
- if (vi_namedfm != NULL || fm->time_set < timestamp || force)
+ if (vi_namedfm != NULL || fm->fmark.mark.lnum == 0
+ || fm->time_set < timestamp || force)
{
fm->fmark.mark.lnum = lnum;
fm->fmark.mark.col = col;