diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-06-08 18:07:21 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-06-08 18:07:21 +0200 |
commit | c024b4667875e5bc6fd0ed791530e33c3161bff7 (patch) | |
tree | 4b7c358c24cb5f5d6d36a40250afbd44eaf6dda7 /src/fileio.c | |
parent | aef5c62a6fff7654bb8df7b9359e811f7a6e428f (diff) | |
download | vim-git-c024b4667875e5bc6fd0ed791530e33c3161bff7.tar.gz |
patch 8.1.1498: ":write" increments b:changedtick even though nothing changedv8.1.1498
Problem: ":write" increments b:changedtick even though nothing changed.
(Daniel Hahler)
Solution: Only increment b:changedtick if the modified flag is reset.
Diffstat (limited to 'src/fileio.c')
-rw-r--r-- | src/fileio.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/fileio.c b/src/fileio.c index d746298a7..e6fb6bfae 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -4908,8 +4908,8 @@ restore_backup: && !write_info.bw_conv_error && (overwriting || vim_strchr(p_cpo, CPO_PLUS) != NULL)) { - unchanged(buf, TRUE); - /* b:changedtick is always incremented in unchanged() but that + unchanged(buf, TRUE, FALSE); + /* b:changedtick is may be incremented in unchanged() but that * should not trigger a TextChanged event. */ if (buf->b_last_changedtick + 1 == CHANGEDTICK(buf)) buf->b_last_changedtick = CHANGEDTICK(buf); @@ -7081,7 +7081,7 @@ buf_reload(buf_T *buf, int orig_mode) else if (buf == curbuf) /* "buf" still valid */ { /* Mark the buffer as unmodified and free undo info. */ - unchanged(buf, TRUE); + unchanged(buf, TRUE, TRUE); if ((flags & READ_KEEP_UNDO) == 0) { u_blockfree(buf); |