From: Roland McGrath Date: Sat, 27 Feb 1999 13:27:03 +0000 (+0000) Subject: 1999-02-27 Roland McGrath X-Git-Tag: upstream/2.30~27530 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c3aba1be9041b0e490e0fa60204680ec98eb93c2;p=external%2Fglibc.git 1999-02-27 Roland McGrath * hurd/hurdselect.c (_hurd_select): When bailing for bogus fd, don't try to _hurd_port_free a lower-numbered descriptor that was not in any fd_set. --- 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;