From f712e5737d9ae9f62b2768132538e65f6b210c99 Mon Sep 17 00:00:00 2001 From: "hechee@blackhole.universe.org" <> Date: Tue, 24 Oct 2006 10:02:29 +0200 Subject: [PATCH] Small fix. --- io-multiplex/select.lisp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/io-multiplex/select.lisp b/io-multiplex/select.lisp index a5771b6..c08e795 100644 --- a/io-multiplex/select.lisp +++ b/io-multiplex/select.lisp @@ -86,15 +86,15 @@ (multiple-value-bind (item-p fd handler) (next-item) (when item-p (if (fd-open-p fd) - (progn - (when (and (et:fd-isset fd (sb-alien:alien-sap except-fds)) - (handler-except-func handler)) - (funcall (handler-except-func handler) fd :read)) - (when (and (et:fd-isset fd (sb-alien:alien-sap read-fds)) - (handler-read-func handler)) - (funcall (handler-read-func handler) fd :write)) - (when (and (et:fd-isset fd (sb-alien:alien-sap write-fds)) - (handler-write-func handler)) - (funcall (handler-write-func handler) fd :except))) + (cond + ((and (et:fd-isset fd (sb-alien:alien-sap except-fds)) + (handler-except-func handler)) + (funcall (handler-except-func handler) fd :except)) + ((and (et:fd-isset fd (sb-alien:alien-sap read-fds)) + (handler-read-func handler)) + (funcall (handler-read-func handler) fd :read)) + ((and (et:fd-isset fd (sb-alien:alien-sap write-fds)) + (handler-write-func handler)) + (funcall (handler-write-func handler) fd :write))) ;; TODO: add better error handling (error "Handler for bad fd is present: ~A " fd))))))))) -- 2.11.4.GIT