> Index: server/mpm/event/event.c > =================================================================== > --- server/mpm/event/event.c (revision 1642684) > +++ server/mpm/event/event.c (working copy) > @@ -859,16 +859,16 @@ static int start_lingering_close_common(event_conn > cs->pub.state = CONN_STATE_LINGER_NORMAL; > } > apr_atomic_inc32(&lingering_count); > + cs->c->sbh = NULL; > + if (in_worker) { > + notify_suspend(cs); > + } > apr_thread_mutex_lock(timeout_mutex); > - cs->c->sbh = NULL; > TO_QUEUE_APPEND(*q, cs); > cs->pfd.reqevents = ( > cs->pub.sense == CONN_SENSE_WANT_WRITE ? APR_POLLOUT : > APR_POLLIN) | APR_POLLHUP | APR_POLLERR; > cs->pub.sense = CONN_SENSE_DEFAULT; > - if (in_worker) { > - notify_suspend(cs); > - } > rv = apr_pollset_add(event_pollset, &cs->pfd); > apr_thread_mutex_unlock(timeout_mutex); > if (rv != APR_SUCCESS && !APR_STATUS_IS_EEXIST(rv)) {
+1