Mercurial > emacs
comparison src/process.c @ 87689:f0dfa6a512bb
Chong Yidong <cyd at stupidchicken.com>
(wait_reading_process_output): Check for window changes caused by timers.
| author | Glenn Morris <rgm@gnu.org> |
|---|---|
| date | Thu, 10 Jan 2008 04:08:05 +0000 |
| parents | 107ccd98fa12 |
| children | 91da483b3fa5 |
comparison
equal
deleted
inserted
replaced
| 87688:d896cd0ecab5 | 87689:f0dfa6a512bb |
|---|---|
| 4716 | 4716 |
| 4717 if (read_kbd != 0) | 4717 if (read_kbd != 0) |
| 4718 { | 4718 { |
| 4719 int old_timers_run = timers_run; | 4719 int old_timers_run = timers_run; |
| 4720 struct buffer *old_buffer = current_buffer; | 4720 struct buffer *old_buffer = current_buffer; |
| 4721 Lisp_Object old_window = selected_window; | |
| 4721 int leave = 0; | 4722 int leave = 0; |
| 4722 | 4723 |
| 4723 if (detect_input_pending_run_timers (do_display)) | 4724 if (detect_input_pending_run_timers (do_display)) |
| 4724 { | 4725 { |
| 4725 swallow_events (do_display); | 4726 swallow_events (do_display); |
| 4729 | 4730 |
| 4730 /* If a timer has run, this might have changed buffers | 4731 /* If a timer has run, this might have changed buffers |
| 4731 an alike. Make read_key_sequence aware of that. */ | 4732 an alike. Make read_key_sequence aware of that. */ |
| 4732 if (timers_run != old_timers_run | 4733 if (timers_run != old_timers_run |
| 4733 && waiting_for_user_input_p == -1 | 4734 && waiting_for_user_input_p == -1 |
| 4734 && old_buffer != current_buffer) | 4735 && (old_buffer != current_buffer |
| 4736 || !EQ (old_window, selected_window))) | |
| 4735 record_asynch_buffer_change (); | 4737 record_asynch_buffer_change (); |
| 4736 | 4738 |
| 4737 if (leave) | 4739 if (leave) |
| 4738 break; | 4740 break; |
| 4739 } | 4741 } |
