emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Did something change with respect to Emacs idle loop:


From: Andreas Seltenreich
Subject: Re: Did something change with respect to Emacs idle loop:
Date: Tue, 26 Sep 2006 19:49:35 +0200
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.50 (gnu/linux)

"T. V. Raman" <address@hidden> writes:

> Another situation where I've noticed changed behavior is with
> emms (2.1) --- if you launch a playlist  then playback stops
> after each track, and you again need to touch the keyboard  for
> it to move to the next track.

Could this be related to the recently-fixed fontification loop
problem?  When investigating with gdb, I noticed that Emacs didn't
leave the following loop in wait_reading_process_output() since
timers_run was repeatedly increased during redisplay, and execution
didn't ever reach the select().

--8<---------------cut here---------------start------------->8---
          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 ();

              if (timers_run != old_timers_run && do_display)
                /* We must retry, since a timer may have requeued itself
                   and that could alter the time_delay.  */
                redisplay_preserve_echo_area (9);
              else
                break;
            }
--8<---------------cut here---------------end--------------->8---

HTH
Andreas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]