summaryrefslogtreecommitdiff
path: root/lisp/timer.el
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-03-27 00:08:15 +0000
committerRichard M. Stallman <rms@gnu.org>1996-03-27 00:08:15 +0000
commit8c480547e6908f2f5d4862bee9056aac3a8564d9 (patch)
tree96760055f36c1adc35eb15c5fd175d7bee2d9f5e /lisp/timer.el
parent15126ef601ffd5cdbe84159b5bde407a9545bec1 (diff)
downloademacs-8c480547e6908f2f5d4862bee9056aac3a8564d9.tar.gz
(timer-event-handler): Inhibit quitting.
Record the last few events.
Diffstat (limited to 'lisp/timer.el')
-rw-r--r--lisp/timer.el11
1 files changed, 10 insertions, 1 deletions
diff --git a/lisp/timer.el b/lisp/timer.el
index bbf59d185d6..64f8764a3e4 100644
--- a/lisp/timer.el
+++ b/lisp/timer.el
@@ -209,10 +209,19 @@ fire repeatedly that many seconds apart."
;; middle of a key sequence being entered are still handled correctly.
(define-key special-event-map [timer-event] 'timer-event-handler)
+;; Record the last few events, for debugging.
+(defvar timer-event-last-2 nil)
+(defvar timer-event-last-1 nil)
+(defvar timer-event-last nil)
+
(defun timer-event-handler (event)
"Call the handler for the timer in the event EVENT."
(interactive "e")
- (let ((timer (car-safe (cdr-safe event))))
+ (setq timer-event-last-2 timer-event-last-1)
+ (setq timer-event-last-1 timer-event-last)
+ (setq timer-event-last event)
+ (let ((inhibit-quit t)
+ (timer (car-safe (cdr-safe event))))
(if (timerp timer)
(progn
;; Delete from queue.