From 6c27465b7676fe6be837a38b2ea26846133acfa0 Mon Sep 17 00:00:00 2001 From: Dmitry Antipov Date: Wed, 23 Jan 2013 18:49:54 +0400 Subject: [PATCH] * insdel.c (prepare_to_modify_buffer): Force redisplay if hidden buffer is prepared to modification (Bug#13164). --- src/ChangeLog | 5 +++++ src/insdel.c | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 7dc7b25f85a..67b63eb1fdb 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2013-01-23 Dmitry Antipov + + * insdel.c (prepare_to_modify_buffer): Force redisplay if + hidden buffer is prepared to modification (Bug#13164). + 2013-01-22 Dmitry Antipov * window.h (struct window): Change window_end_valid member from diff --git a/src/insdel.c b/src/insdel.c index 303247816ca..98dd97bdd08 100644 --- a/src/insdel.c +++ b/src/insdel.c @@ -1804,9 +1804,12 @@ prepare_to_modify_buffer (ptrdiff_t start, ptrdiff_t end, Fbarf_if_buffer_read_only (); /* If we're modifying the buffer other than shown in a selected window, - let redisplay consider other windows if this buffer is visible. */ + let redisplay consider other windows if this buffer is visible or + hidden (although hidden buffers have zero window counts, their state + may affect the display too, e.g. via mode lines of other buffers). */ if (XBUFFER (XWINDOW (selected_window)->buffer) != current_buffer - && buffer_window_count (current_buffer)) + && (buffer_window_count (current_buffer) + || BUFFER_HIDDEN_P (current_buffer))) ++windows_or_buffers_changed; if (buffer_intervals (current_buffer)) -- 2.11.4.GIT