1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-25 10:47:00 +00:00

Fix glitches caused by addition of psec to timers.

* etc/NEWS: Document timer format change.
* lisp/image.el (image-animate-timer):
* lisp/time.el (display-time-world-timer):
Use timer--function and timer--args rather than raw access to
timer vector.
* lisp/gnus/gnus-art.el (gnus-article-stop-animations):
Use timer--function rather than raw access to timer vector.

Fixes: debbugs:12430
This commit is contained in:
Paul Eggert 2012-09-12 23:09:45 -07:00
parent d59a1afb9a
commit 72eac303ea
7 changed files with 28 additions and 4 deletions

View File

@ -1,3 +1,7 @@
2012-09-13 Paul Eggert <eggert@cs.ucla.edu>
* NEWS: Document timer format change (Bug#12430).
2012-09-11 Paul Eggert <eggert@cs.ucla.edu>
Simplify, document, and port floating-point (Bug#12381).

View File

@ -101,6 +101,11 @@ machines. Other functions that use this format, such as
file-attributes and format-time-string, have been changed accordingly.
Old-format time stamps are still accepted.
** The format of timers in timer-list and timer-idle-list is now
[HIGH-SECONDS LOW-SECONDS USECS PSECS REPEAT-DELAY FUNCTION ARGS IDLE-DELAY].
The PSECS slot is new, and uses picosecond resolution. It can be
accessed via the new timer--psecs accessor.
** Emacs now generates backtraces on fatal errors.
On encountering a fatal error, Emacs now outputs a textual description
of the fatal signal, and a short backtrace on platforms like glibc

View File

@ -1,3 +1,11 @@
2012-09-13 Paul Eggert <eggert@cs.ucla.edu>
Fix glitches caused by addition of psec to timers (Bug#12430).
* image.el (image-animate-timer):
* time.el (display-time-world-timer):
Use timer--function and timer--args rather than raw access to
timer vector.
2012-09-13 Glenn Morris <rgm@gnu.org>
* emacs-lisp/bytecomp.el (byte-compile-warning-prefix):

View File

@ -1,3 +1,9 @@
2012-09-13 Paul Eggert <eggert@cs.ucla.edu>
Fix glitches caused by addition of psec to timers.
* gnus-art.el (gnus-article-stop-animations): Use timer--function
rather than raw access to timer vector.
2012-09-11 Julien Danjou <julien@danjou.info>
* gnus-notifications.el (gnus-notifications): Check for nil values in

View File

@ -4554,7 +4554,7 @@ commands:
(defun gnus-article-stop-animations ()
(dolist (timer (and (boundp 'timer-list)
timer-list))
(when (eq (elt timer 5) 'image-animate-timeout)
(when (eq (timer--function timer) 'image-animate-timeout)
(cancel-timer timer))))
(defun gnus-stop-downloads ()

View File

@ -645,8 +645,8 @@ number, play until that number of seconds has elapsed."
(while tail
(setq timer (car tail)
tail (cdr tail))
(if (and (eq (aref timer 5) 'image-animate-timeout)
(eq (car-safe (aref timer 6)) image))
(if (and (eq (timer--function timer) 'image-animate-timeout)
(eq (car-safe (timer--args timer)) image))
(setq tail nil)
(setq timer nil)))
timer))

View File

@ -575,7 +575,8 @@ To turn off the world time display, go to that window and type `q'."
(let ((list timer-list))
(while list
(let ((elt (pop list)))
(when (equal (symbol-name (aref elt 5)) "display-time-world-timer")
(when (equal (symbol-name (timer--function elt))
"display-time-world-timer")
(cancel-timer elt)))))))
;;;###autoload