aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/shada.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/nvim/shada.c b/src/nvim/shada.c
index 552dd2dcf4..f726f09fad 100644
--- a/src/nvim/shada.c
+++ b/src/nvim/shada.c
@@ -2796,7 +2796,7 @@ static ShaDaWriteResult shada_write(ShaDaWriteDef *const sd_writer,
// Update numbered marks: '0' should be replaced with the current position,
// '9' should be removed and all other marks shifted.
- if (!ignore_buf(curbuf, &removable_bufs)) {
+ if (!ignore_buf(curbuf, &removable_bufs) && curwin->w_cursor.lnum != 0) {
replace_numbered_mark(wms, 0, (PossiblyFreedShadaEntry) {
.can_free_entry = false,
.data = {
@@ -2804,9 +2804,7 @@ static ShaDaWriteResult shada_write(ShaDaWriteDef *const sd_writer,
.timestamp = os_time(),
.data = {
.filemark = {
- .mark = (curwin->w_cursor.lnum
- ? curwin->w_cursor
- : (pos_T) { 1, 0, 0 }),
+ .mark = curwin->w_cursor,
.name = '0',
.additional_data = NULL,
.fname = (char *)curbuf->b_ffname,