[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: interix 3.5 select bug
From: |
Bruno Haible |
Subject: |
Re: interix 3.5 select bug |
Date: |
Fri, 13 Mar 2009 00:57:59 +0100 |
User-agent: |
KMail/1.9.9 |
Jim Meyering wrote:
> > + /* Interix 3.5 has a bug: it does not support nfds == 0. */
> > + if (nfds == 0)
> > + {
> > + nfds = 1;
> > + rfds = NULL;
> > + wfds = NULL;
> > + xfds = NULL;
> > + }
>
> Did you consider doing the above only when all three input pointers
> are NULL?
No, I didn't. According to POSIX
select (0, rfds, wfds, xfds, timeout) is supposed to be equivalent to
select (0, NULL, NULL, NULL, timeout) and supposed to be equivalent to
select (n, NULL, NULL, NULL, timeout) for any n > 0. So, on POSIX systems,
this transformation is correct, and on Interix, Markus Duft said that he
verified that changing nfds from 0 to 1 made the problem go away.
> I have a slight preference not to map the suspicious
> combination of nfds==0 and one or more non-NULL pointer arg.
> to arguments that provoke no diagnostic on that system.
Huh? The point of the workaround is to make
select (0, rfds, wfds, xfds, timeout)
work according to POSIX, regardless which of the three arguments are
NULL or non-NULL. What would be the point of activating the workaround
for 1 out of 8 combinations and not for the other 7 cases?
Bruno
- Re: interix 3.5 select bug, Pádraig Brady, 2009/03/11
- Re: interix 3.5 select bug, Jim Meyering, 2009/03/11
- Re: interix 3.5 select bug, Simon Josefsson, 2009/03/11
- Re: interix 3.5 select bug, Jim Meyering, 2009/03/11
- Re: interix 3.5 select bug, Bruno Haible, 2009/03/12
- Re: interix 3.5 select bug, Jim Meyering, 2009/03/12
- Re: interix 3.5 select bug,
Bruno Haible <=
- Re: interix 3.5 select bug, Jim Meyering, 2009/03/13
- Re: interix 3.5 select bug, Bruno Haible, 2009/03/13
- RE: interix 3.5 select bug, Markus Duft, 2009/03/13
- Re: interix 3.5 select bug, Simon Josefsson, 2009/03/16
Re: interix 3.5 select bug, Paolo Bonzini, 2009/03/11
RE: interix 3.5 select bug, Markus Duft, 2009/03/12