summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2023-04-30 16:24:05 +0300
committerEli Zaretskii <eliz@gnu.org>2023-04-30 16:24:05 +0300
commitca43435816b7c7ceaef1a6fce967cbdbcf243ea3 (patch)
treed98ef8789e2cb588439f5c93b255e52d03453c40 /src
parent610a7657e0aeaaf6299de76f13a6dc6e4af7db96 (diff)
downloademacs-ca43435816b7c7ceaef1a6fce967cbdbcf243ea3.tar.gz
Fix redisplay of mode line after its format changes from nil
* src/dispnew.c (update_window): Make sure a mode-line's row of the current glyph matrix is disabled when the mode line is not being displayed. (Bug#63186)
Diffstat (limited to 'src')
-rw-r--r--src/dispnew.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/dispnew.c b/src/dispnew.c
index 87ec83acdf3..65d9cf9b4e1 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -3748,6 +3748,14 @@ update_window (struct window *w, bool force_p)
}
}
+ /* If the window doesn't display its mode line, make sure the
+ corresponding row of the current glyph matrix is disabled, so
+ that if and when the mode line is displayed again, it will be
+ cleared and completely redrawn. */
+ if (!window_wants_mode_line (w))
+ SET_MATRIX_ROW_ENABLED_P (w->current_matrix,
+ w->current_matrix->nrows - 1, false);
+
/* Was display preempted? */
paused_p = row < end;