[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r112248: * lisp/emacs-lisp/timer.el (
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r112248: * lisp/emacs-lisp/timer.el (timer-event-handler): Don't retrigger a canceled |
Date: |
Sun, 07 Apr 2013 22:08:45 -0400 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 112248
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14156
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Sun 2013-04-07 22:08:45 -0400
message:
* lisp/emacs-lisp/timer.el (timer-event-handler): Don't retrigger a canceled
timer.
modified:
lisp/ChangeLog
lisp/emacs-lisp/timer.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-04-07 18:56:28 +0000
+++ b/lisp/ChangeLog 2013-04-08 02:08:45 +0000
@@ -1,3 +1,8 @@
+2013-04-08 Stefan Monnier <address@hidden>
+
+ * emacs-lisp/timer.el (timer-event-handler): Don't retrigger a canceled
+ timer (bug#14156).
+
2013-04-07 Nic Ferrier <address@hidden>
* emacs-lisp/ert.el (should, should-not, should-error): Add edebug
=== modified file 'lisp/emacs-lisp/timer.el'
--- a/lisp/emacs-lisp/timer.el 2013-01-13 01:23:48 +0000
+++ b/lisp/emacs-lisp/timer.el 2013-04-08 02:08:45 +0000
@@ -314,8 +314,12 @@
(save-current-buffer
(apply (timer--function timer) (timer--args timer)))
(error (message "Error in timer: %S" err)))
- (if retrigger
- (setf (timer--triggered timer) nil)))
+ (when (and retrigger
+ ;; If the timer's been canceled, don't "retrigger" it
+ ;; since it might still be in the copy of timer-list kept
+ ;; by keyboard.c:timer_check (bug#14156).
+ (memq timer timer-list))
+ (setf (timer--triggered timer) nil)))
(error "Bogus timer event"))))
;; This function is incompatible with the one in levents.el.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r112248: * lisp/emacs-lisp/timer.el (timer-event-handler): Don't retrigger a canceled,
Stefan Monnier <=