(__select): Don't fault when some fdmask is 0.
authorMiles Bader <miles@gnu.org>
Tue, 5 Mar 1996 17:15:44 +0000 (17:15 +0000)
committerMiles Bader <miles@gnu.org>
Tue, 5 Mar 1996 17:15:44 +0000 (17:15 +0000)
sysdeps/mach/hurd/select.c

index 001a28b..d170287 100644 (file)
@@ -284,15 +284,15 @@ DEFUN(__select, (nfds, readfds, writefds, exceptfds, timeout),
 
       if (type & SELECT_READ)
        got++;
-      else
+      else if (readfds)
        FD_CLR (i, readfds);
       if (type & SELECT_WRITE)
        got++;
-      else
+      else if (writefds)
        FD_CLR (i, writefds);
       if (type & SELECT_URG)
        got++;
-      else
+      else if (exceptfds)
        FD_CLR (i, exceptfds);
     }