On Fri, Sep 3, 2021 at 1:01 PM Yann Ylavic <ylavic....@gmail.com> wrote: > > What I want to avoid in this loop is to handle all the POLLIN|POLLERR > or POLLOUT|POLLERR or POLLERR alone which depend on the system. > So it's written such that there is no "blank" pass, when no > POLLIN|POLLHUP or POLLOUT is returned (likely an error condition) we > will issue either a read or a write (in that order of preference) to > catch the error at the core filters' level. > This was missing the POLLOUT|POLLHUP case when the socket is shutdown
This was missing the POLLPRI|POLLHUP (PR 65521) ... > for read already, meaning that we will never get POLLIN anymore, and > this is fixed by this !(reqevents & APR_POLLIN) case to issue a write > (well a shutdown for write exactly here) when no read is to be issued > below. > > Does it make sense? > > Regards; > Yann.