From fa77249f50c56dab722f0c7560e11e51dea661cd Mon Sep 17 00:00:00 2001 From: Gerd Moellmann Date: Mon, 10 Apr 2000 13:14:24 +0000 Subject: [PATCH] (setup_echo_area_for_printing): Choose an echo area buffer, if it's not set up yet. --- src/xdisp.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/xdisp.c b/src/xdisp.c index 975a431dd8c..bb79c954686 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5480,9 +5480,20 @@ setup_echo_area_for_printing (multibyte_p) message_buf_print = 1; } - else if (current_buffer != XBUFFER (echo_area_buffer[0])) - /* Someone switched buffers between print requests. */ - set_buffer_internal (XBUFFER (echo_area_buffer[0])); + else + { + if (NILP (echo_area_buffer[0])) + { + if (EQ (echo_area_buffer[1], echo_buffer[0])) + echo_area_buffer[0] = echo_buffer[1]; + else + echo_area_buffer[0] = echo_buffer[0]; + } + + if (current_buffer != XBUFFER (echo_area_buffer[0])) + /* Someone switched buffers between print requests. */ + set_buffer_internal (XBUFFER (echo_area_buffer[0])); + } } @@ -10264,7 +10275,7 @@ try_window_id (w) /* Scroll the display. Do it before changing the current matrix so that xterm.c doesn't get confused about where the cursor glyph is found. */ - if (dy) + if (dy && run.height) { update_begin (f); -- 2.39.5