Chong Yidong <cyd at stupidchicken.com>
authorGlenn Morris <rgm@gnu.org>
Thu, 10 Jan 2008 04:08:55 +0000 (04:08 +0000)
committerGlenn Morris <rgm@gnu.org>
Thu, 10 Jan 2008 04:08:55 +0000 (04:08 +0000)
(wait_reading_process_output): Check for window changes caused by timers.

src/ChangeLog
src/process.c

index 6433ada..18b1e04 100644 (file)
@@ -1,3 +1,8 @@
+2008-01-10  Chong Yidong  <cyd@stupidchicken.com>
+
+       * process.c (wait_reading_process_output): Check for window
+       changes caused by timers.
+
 2008-01-09  Kenichi Handa  <handa@ni.aist.go.jp>
 
        * coding.c (detect_coding_iso2022): New arg
index 5812660..a48e543 100644 (file)
@@ -4718,6 +4718,7 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display,
        {
          int old_timers_run = timers_run;
          struct buffer *old_buffer = current_buffer;
+         Lisp_Object old_window = selected_window;
          int leave = 0;
 
          if (detect_input_pending_run_timers (do_display))
@@ -4731,7 +4732,8 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display,
             an alike.  Make read_key_sequence aware of that.  */
          if (timers_run != old_timers_run
              && waiting_for_user_input_p == -1
-             && old_buffer != current_buffer)
+             && (old_buffer != current_buffer
+             || !EQ (old_window, selected_window)))
            record_asynch_buffer_change ();
 
          if (leave)