From 23dcef92695c0042323d9cbf8d559f04741d2f00 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Tue, 7 Dec 2021 20:48:39 +0800 Subject: fix(highlight): always update window highlight if highlight changed --- src/nvim/screen.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/screen.c b/src/nvim/screen.c index 2ce2be0bfd..c4e1cadcb1 100644 --- a/src/nvim/screen.c +++ b/src/nvim/screen.c @@ -451,9 +451,11 @@ int update_screen(int type) // reset cmdline_row now (may have been changed temporarily) compute_cmdrow(); + bool hl_changed = false; // Check for changed highlighting if (need_highlight_changed) { highlight_changed(); + hl_changed = true; } if (type == CLEAR) { // first clear screen @@ -554,7 +556,7 @@ int update_screen(int type) * buffer. Each buffer must only be done once. */ FOR_ALL_WINDOWS_IN_TAB(wp, curtab) { - update_window_hl(wp, type >= NOT_VALID); + update_window_hl(wp, type >= NOT_VALID || hl_changed); buf_T *buf = wp->w_buffer; if (buf->b_mod_set) { -- cgit