diff --git a/site-lisp/db-utils.el b/site-lisp/db-utils.el index 1dbe173..d5431ad 100644 --- a/site-lisp/db-utils.el +++ b/site-lisp/db-utils.el @@ -210,6 +210,9 @@ If not given, FORMAT-STRING defaults to some ISO 8601-like format." (let* ((high-seconds (- high 2208992400)) ; subtract seconds between 1900-01-01 and the epoch (h (lsh high-seconds -16)) (let* ((high-seconds (- high 2208988800)) ; subtract seconds between 1900-01-01 and the epoch + (h (if (< high-seconds 0) + (- (lsh (- high-seconds) -16)) + (lsh high-seconds -16))) (l (% high-seconds 65536)) (u (floor (* (/ low 4294967296.0) 1e6))) (p (- low (floor (/ (* u 4294967296) 1e6)))))