1.0.22.18: select() and EAGAIN
[sbcl.git] / src / code / serve-event.lisp
index 00e3dec..2046161 100644 (file)
@@ -277,11 +277,12 @@ Shared between all threads, unless locally bound. EXPERIMENTAL.")
                (case err
                  (#.sb!unix:ebadf
                   (handler-descriptors-error))
-                 (#.sb!unix:eintr
+                 ((#.sb!unix:eintr #.sb!unix:eagain)
                   t)
                  (otherwise
                   (with-simple-restart (continue "Ignore failure and continue.")
-                    (simple-perror "Unix system call select() failed" :errno err))))
+                    (simple-perror "Unix system call select() failed"
+                                   :errno err))))
                #!+win32
                (handler-descriptors-error))
               ((plusp value)