aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hurd/hurdselect.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/hurd/hurdselect.c b/hurd/hurdselect.c
index e65def5..4e9bc39 100644
--- a/hurd/hurdselect.c
+++ b/hurd/hurdselect.c
@@ -1,5 +1,5 @@
/* Guts of both `select' and `poll' for Hurd.
- Copyright (C) 1991,92,93,94,95,96,97,98 Free Software Foundation, Inc.
+ Copyright (C) 1991,92,93,94,95,96,97,98, 99 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -172,8 +172,9 @@ _hurd_select (int nfds,
{
/* If one descriptor is bogus, we fail completely. */
while (i-- > 0)
- _hurd_port_free (&d[i].cell->port, &d[i].ulink,
- d[i].io_port);
+ if (d[i].type != 0)
+ _hurd_port_free (&d[i].cell->port, &d[i].ulink,
+ d[i].io_port);
break;
}
lastfd = i;