use RELATIVE-DECODED-TIMES in serve-event
authorNikodemus Siivola <nikodemus@random-state.net>
Thu, 10 Nov 2011 14:06:19 +0000 (16:06 +0200)
committerNikodemus Siivola <nikodemus@random-state.net>
Thu, 10 Nov 2011 15:14:38 +0000 (17:14 +0200)
 OAOO, yum.

src/code/serve-event.lisp

index 2faa401..ca055ed 100644 (file)
@@ -175,15 +175,9 @@ waiting."
        (flet ((maybe-update-timeout ()
                 ;; If we return early, recompute the timeouts, possibly
                 ;; signaling the deadline or returning with NIL to caller.
-                (multiple-value-bind (sec usec)
-                    (decode-internal-time (get-internal-real-time))
-                  (setf to-sec (- stop-sec sec))
-                  (cond ((> usec stop-usec)
-                         (decf to-sec)
-                         (setf to-usec (- (+ stop-usec 1000000) usec)))
-                        (t
-                         (setf to-usec (- stop-usec usec)))))
-                (when (or (minusp to-sec) (and (zerop to-sec) (not (plusp to-usec))))
+                (setf (values to-sec to-usec)
+                      (relative-decoded-times stop-sec stop-usec))
+                (when (and (zerop to-sec) (not (plusp to-usec)))
                   (cond (signalp
                          (signal-deadline)
                          (go :restart))