On Wed, Mar 15, 2006 at 01:13:58PM -0800, Garrett Rooney wrote:
> On 3/15/06, Garrett Rooney <[EMAIL PROTECTED]> wrote:
...
> > > +    else if (lrv == 2) {
> > > +        ABTS_PTR_EQUAL(tc, s[0], descs[0].desc.s);
> > > +        ABTS_PTR_EQUAL(tc, s[0], descs[0].client_data);
> > > +        ABTS_PTR_EQUAL(tc, s[0], descs[1].desc.s);
> > > +        ABTS_PTR_EQUAL(tc, s[0], descs[1].client_data);
> > > +        ABTS_ASSERT(tc, "returned events incorrect",
> > > +                    ((descs[0].rtnevents | descs[1].rtnevents)
> > > +                     == (APR_POLLIN | APR_POLLOUT))
> > > +                    && descs[0].rtnevents != descs[1].rtnevents);
> >
> > This fails because both rtnevents are actually APR_POLLIN | APR_POLLOUT.

It fails as in the test fails, or it fails to catch the bug?  It would 
need to be rtnevents ^ rtnevents to catch the bug?

> Figured it out.  See r386154 for the fix.  Long standing bug in the
> kqueue code.  Will backport to 1.2.x real soon now.

Nice work!

joe

Reply via email to