diff options
author | Eli Zaretskii <eliz@gnu.org> | 2013-05-16 21:33:27 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2013-05-16 21:33:27 +0300 |
commit | 5bb98290d7f11fc6b9fb2d8b33277483f5f3ccc4 (patch) | |
tree | caf01cea96812d4daa34c14b4198fd2b21fbbac4 | |
parent | 721c9e8a682721c6010c4c685764cd2359baf46b (diff) | |
download | emacs-5bb98290d7f11fc6b9fb2d8b33277483f5f3ccc4.tar.gz emacs-5bb98290d7f11fc6b9fb2d8b33277483f5f3ccc4.tar.bz2 emacs-5bb98290d7f11fc6b9fb2d8b33277483f5f3ccc4.zip |
Fix bug #14408 with updating *Messages* display.
src/xdisp.c (message_dolog): If the *Messages* buffer is shown in
some window, increment windows_or_buffers_changed, so that
*Messages* display in that window is updated.
-rw-r--r-- | src/ChangeLog | 4 | ||||
-rw-r--r-- | src/xdisp.c | 10 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index e5308e2db3b..42b21abc8ae 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,9 @@ 2013-05-16 Eli Zaretskii <eliz@gnu.org> + * xdisp.c (message_dolog): If the *Messages* buffer is shown in + some window, increment windows_or_buffers_changed, so that + *Messages* display in that window is updated. (Bug#14408) + * w32.c: Include epaths.h. (init_environment): Use cmdproxy.exe without leading directories. Support emacs.exe in src; point SHELL to cmdproxy in ../nt in that diff --git a/src/xdisp.c b/src/xdisp.c index 0a79e6fd891..3f7e8610a09 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -9537,7 +9537,15 @@ message_dolog (const char *m, ptrdiff_t nbytes, bool nlflag, bool multibyte) shown = buffer_window_count (current_buffer) > 0; set_buffer_internal (oldbuf); - if (!shown) + /* We called insert_1_both above with its 5th argument (PREPARE) + zero, which prevents insert_1_both from calling + prepare_to_modify_buffer, which in turns prevents us from + incrementing windows_or_buffers_changed even if *Messages* is + shown in some window. So we must manually incrementing + windows_or_buffers_changed here to make up for that. */ + if (shown) + windows_or_buffers_changed++; + else windows_or_buffers_changed = old_windows_or_buffers_changed; message_log_need_newline = !nlflag; Vdeactivate_mark = old_deactivate_mark; |