Mercurial > emacs
changeset 14870:c51cef393dae
(timer-set-time): Don't set usecs to nil.
(timer-duration): Return nil if junk at end of string.
Handle just a number--treat it as number of seconds.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 24 Mar 1996 02:05:38 +0000 |
parents | a9ba8d3ffd87 |
children | cb986696ec03 |
files | lisp/timer.el |
diffstat | 1 files changed, 10 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/timer.el Sun Mar 24 00:26:02 1996 +0000 +++ b/lisp/timer.el Sun Mar 24 02:05:38 1996 +0000 @@ -51,7 +51,9 @@ (error "Invalid timer")) (aset timer 1 (car time)) (aset timer 2 (if (consp (cdr time)) (car (cdr time)) (cdr time))) - (aset timer 3 (if (consp (cdr time)) (nth 2 time) 0)) + (aset timer 3 (or (and (consp (cdr time)) (consp (cdr (cdr time))) + (nth 2 time)) + 0)) (aset timer 4 (and (numberp delta) (> delta 0) delta)) timer) @@ -216,7 +218,9 @@ ;; Delete from queue. (cancel-timer timer) ;; Run handler - (apply (aref timer 5) (aref timer 6)) + (condition-case nil + (apply (aref timer 5) (aref timer 6)) + (error nil)) ;; Re-schedule if requested. (if (aref timer 4) (if (aref timer 7) @@ -391,7 +395,10 @@ secs (+ secs (* count itemsize))) (setq secs nil start (length string))))) - secs)) + (if (= start (length string)) + secs + (if (string-match "\\`[0-9.]+\\'" string) + (string-to-number string))))) (provide 'timer)