From: Dmitry Antipov Date: Wed, 23 Jan 2013 14:49:54 +0000 (+0400) Subject: * insdel.c (prepare_to_modify_buffer): Force redisplay if X-Git-Tag: emacs-24.3.90~173^2~7^2~233 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6c27465b7676fe6be837a38b2ea26846133acfa0;p=emacs.git * insdel.c (prepare_to_modify_buffer): Force redisplay if hidden buffer is prepared to modification (Bug#13164). --- 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))