On Sun, 2009-05-31 at 09:15 -0700, Sander Temme wrote: > Looks like descs has not been filled in: > > (gdb) p descs > $8 = (const apr_pollfd_t *) 0x0 > > Should that be NULL after the poll? Maybe you need to step into apr_pollset_poll() on line 384, to see what happens to descs there. Looks like success is being returned, but descs is still NULL, where it should not be: --------------------- if (descriptors) { *descriptors = pollset->result_set; } --------------------- We know that descriptors is not NULL there, because it is &descs. So, I guess pollset->result_set must be NULL then, which it cannot be because it was supposed to be initialised in apr_pollset_create(). Maybe something is stomping over the apr_pollset_t structure and making result_set NULL. Really weird... -- Bojan