aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/buffer_defs.h5
-rw-r--r--src/nvim/change.c4
-rw-r--r--src/nvim/edit.c6
-rw-r--r--src/nvim/normal.c4
4 files changed, 10 insertions, 9 deletions
diff --git a/src/nvim/buffer_defs.h b/src/nvim/buffer_defs.h
index a72fe69425..93fe37b585 100644
--- a/src/nvim/buffer_defs.h
+++ b/src/nvim/buffer_defs.h
@@ -541,8 +541,9 @@ struct file_buffer {
int b_changed; // 'modified': Set to true if something in the
// file has been changed and not written out.
- bool b_changed_notified; // if the BufModified autocmd has been triggered
- // since the last time b_changed was modified
+ bool b_changed_invalid; // Set if BufModified autocmd has not been
+ // triggered since the last time b_changed was
+ // modified.
/// Change-identifier incremented for each change, including undo.
///
diff --git a/src/nvim/change.c b/src/nvim/change.c
index 3c1af1f46a..271d350967 100644
--- a/src/nvim/change.c
+++ b/src/nvim/change.c
@@ -129,7 +129,7 @@ void changed(void)
void changed_internal(void)
{
curbuf->b_changed = true;
- curbuf->b_changed_notified = false;
+ curbuf->b_changed_invalid = true;
ml_setflags(curbuf);
check_status(curbuf);
redraw_tabline = true;
@@ -503,7 +503,7 @@ void unchanged(buf_T *buf, int ff, bool always_inc_changedtick)
{
if (buf->b_changed || (ff && file_ff_differs(buf, false))) {
buf->b_changed = false;
- buf->b_changed_notified = false;
+ buf->b_changed_invalid = true;
ml_setflags(buf);
if (ff) {
save_file_ff(buf);
diff --git a/src/nvim/edit.c b/src/nvim/edit.c
index 9ce587a8c6..9c8d64a6b2 100644
--- a/src/nvim/edit.c
+++ b/src/nvim/edit.c
@@ -1488,12 +1488,12 @@ static void ins_redraw(
do_autocmd_winscrolled(curwin);
}
- // Trigger BufModified if b_changed_notified is false.
+ // Trigger BufModified if b_changed_invalid is set.
if (ready && has_event(EVENT_BUFMODIFIEDSET)
- && curbuf->b_changed_notified == false
+ && curbuf->b_changed_invalid == true
&& !pum_visible()) {
apply_autocmds(EVENT_BUFMODIFIEDSET, NULL, NULL, false, curbuf);
- curbuf->b_changed_notified = true;
+ curbuf->b_changed_invalid = false;
}
if (curwin->w_p_cole > 0 && conceal_cursor_line(curwin)
diff --git a/src/nvim/normal.c b/src/nvim/normal.c
index f78f5a1d1f..2805a7d74e 100644
--- a/src/nvim/normal.c
+++ b/src/nvim/normal.c
@@ -1233,9 +1233,9 @@ static void normal_check_buffer_modified(NormalState *s)
{
// Trigger BufModified if b_modified changed
if (!finish_op && has_event(EVENT_BUFMODIFIEDSET)
- && curbuf->b_changed_notified == false) {
+ && curbuf->b_changed_invalid == true) {
apply_autocmds(EVENT_BUFMODIFIEDSET, NULL, NULL, false, curbuf);
- curbuf->b_changed_notified = true;
+ curbuf->b_changed_invalid = false;
}
}