diff options
-rw-r--r-- | src/nvim/shada.c | 8 | ||||
-rw-r--r-- | src/nvim/shada.h | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/nvim/shada.c b/src/nvim/shada.c index 2d555faded..352ca19e01 100644 --- a/src/nvim/shada.c +++ b/src/nvim/shada.c @@ -536,7 +536,7 @@ static void shada_read(FILE *const fp, const int flags) } case kSDItemJump: case kSDItemGlobalMark: { - if (!(flags & kShaDaWantMarks) + if (!(flags & kShaDaWantInfo) || (cur_entry.type == kSDItemGlobalMark && get_viminfo_parameter('f') == 0)) { shada_free_shada_entry(&cur_entry); @@ -1734,9 +1734,9 @@ shada_read_next_item_start: } break; } - case kSDItemBufferList: - case kSDItemChange: + case kSDItemGlobalMark: case kSDItemJump: + case kSDItemBufferList: case kSDItemVariable: case kSDItemRegister: case kSDItemHistoryEntry: @@ -1747,7 +1747,7 @@ shada_read_next_item_start: } break; } - case kSDItemGlobalMark: + case kSDItemChange: case kSDItemLocalMark: { if (!(flags & kShaDaWantMarks)) { SKIP; diff --git a/src/nvim/shada.h b/src/nvim/shada.h index ef7527677e..8033cbe116 100644 --- a/src/nvim/shada.h +++ b/src/nvim/shada.h @@ -6,7 +6,7 @@ typedef long ShadaPosition; /// Flags for shada_read_file and children enum { kShaDaWantInfo = 1, ///< Load non-mark information - kShaDaWantMarks = 2, ///< Load file marks + kShaDaWantMarks = 2, ///< Load local file marks and change list kShaDaForceit = 4, ///< Overwrite info already read kShaDaGetOldfiles = 8, ///< Load v:oldfiles. kShaDaWantHeader = 16, ///< Do not skip header (shada_read_next_item). |