Mercurial > emacs
diff lisp/calendar/cal-dst.el @ 56425:5572efece9a6
(calendar-time-from-absolute): Return a list of two integers, instead
of a cons.
author | Luc Teirlinck <teirllm@auburn.edu> |
---|---|
date | Wed, 14 Jul 2004 23:22:14 +0000 |
parents | 695cf19ef79e |
children | 18a818a2ee7c 97905c4f1a42 |
line wrap: on
line diff
--- a/lisp/calendar/cal-dst.el Wed Jul 14 23:04:14 2004 +0000 +++ b/lisp/calendar/cal-dst.el Wed Jul 14 23:22:14 2004 +0000 @@ -70,14 +70,14 @@ (defun calendar-time-from-absolute (abs-date s) "Time of absolute date ABS-DATE, S seconds after midnight. -Returns the pair (HIGH . LOW) where HIGH and LOW are the high and low +Returns the list (HIGH LOW) where HIGH and LOW are the high and low 16 bits, respectively, of the number of seconds 1970-01-01 00:00:00 UTC, ignoring leap seconds, that is the equivalent moment to S seconds after midnight UTC on absolute date ABS-DATE." (let* ((a (- abs-date calendar-system-time-basis)) (u (+ (* 163 (mod a 512)) (floor s 128)))) ;; Overflow is a terrible thing! - (cons + (list ;; floor((60*60*24*a + s) / 2^16) (+ a (* 163 (floor a 512)) (floor u 512)) ;; (60*60*24*a + s) mod 2^16