diff src/process.c @ 37465:f790d83ea743

(wait_reading_process_input): Call record_asynch_buffer_change only if a timer really changed buffers.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 25 Apr 2001 15:12:21 +0000
parents 49147b9fe206
children 270e6cb4c672
line wrap: on
line diff
--- a/src/process.c	Wed Apr 25 14:51:11 2001 +0000
+++ b/src/process.c	Wed Apr 25 15:12:21 2001 +0000
@@ -2453,12 +2453,14 @@
 	  do
 	    {
 	      int old_timers_run = timers_run;
+	      struct buffer *old_buffer = current_buffer;
 	      
 	      timer_delay = timer_check (1);
 
 	      /* If a timer has run, this might have changed buffers
 		 an alike.  Make read_key_sequence aware of that.  */
 	      if (timers_run != old_timers_run
+		  && old_buffer != current_buffer
 		  && waiting_for_user_input_p == -1)
 		record_asynch_buffer_change ();
 	      
@@ -2678,6 +2680,7 @@
       if (XINT (read_kbd) != 0)
 	{
 	  int old_timers_run = timers_run;
+	  struct buffer *old_buffer = current_buffer;
 	  int leave = 0;
 	
 	  if (detect_input_pending_run_timers (do_display))
@@ -2690,7 +2693,8 @@
 	  /* If a timer has run, this might have changed buffers
 	     an alike.  Make read_key_sequence aware of that.  */
 	  if (timers_run != old_timers_run
-	      && waiting_for_user_input_p == -1)
+	      && waiting_for_user_input_p == -1
+	      && old_buffer != current_buffer)
 	    record_asynch_buffer_change ();
 
 	  if (leave)