# HG changeset patch # User Christian Brabandt # Date 1467480605 -7200 # Node ID 160cb082819e3ee4494d219dc7e903bb7e657357 # Parent 1ba77f62adc7054d946047714cce86ecd90a8f5e commit https://github.com/vim/vim/commit/951fa1819ad0e74d73e885d0ec04dd6c70f8d2f7 Author: Bram Moolenaar Date: Sat Jul 2 19:20:06 2016 +0200 patch 7.4.1982 Problem: Viminfo file contains duplicate change marks. Solution: Drop duplicate marks. diff --git a/src/mark.c b/src/mark.c --- a/src/mark.c +++ b/src/mark.c @@ -1859,7 +1859,12 @@ write_viminfo_marks(FILE *fp_out) #ifdef FEAT_JUMPLIST /* changelist positions are stored oldest first */ for (i = 0; i < buf->b_changelistlen; ++i) - write_one_mark(fp_out, '+', &buf->b_changelist[i]); + { + /* skip duplicates */ + if (i == 0 || !equalpos(buf->b_changelist[i - 1], + buf->b_changelist[i])) + write_one_mark(fp_out, '+', &buf->b_changelist[i]); + } #endif for (i = 0; i < NMARKS; i++) write_one_mark(fp_out, 'a' + i, &buf->b_namedm[i]); diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -759,6 +759,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1982, +/**/ 1981, /**/ 1980,