From: Stefan Eissing Date: Mon, 9 Nov 2015 14:34:13 +0000 (+0000) Subject: some connection state tweaks to appease event mpm X-Git-Tag: 2.5.0-alpha~2652 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fff914e913315722e69ed492928a9cbd2be5ed2c;p=thirdparty%2Fapache%2Fhttpd.git some connection state tweaks to appease event mpm git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1713442 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/http2/h2_session.c b/modules/http2/h2_session.c index 710960c62d7..1ccfaa26ade 100644 --- a/modules/http2/h2_session.c +++ b/modules/http2/h2_session.c @@ -1373,8 +1373,10 @@ apr_status_t h2_session_process(h2_session *session) } if (may_block) { + h2_session_flush(session); if (session->c->cs) { - session->c->cs->state = CONN_STATE_WRITE_COMPLETION; + session->c->cs->state = (got_streams? CONN_STATE_HANDLER + : CONN_STATE_WRITE_COMPLETION); } status = h2_conn_io_read(&session->io, APR_BLOCK_READ, session_receive, session); diff --git a/modules/http2/h2_task.c b/modules/http2/h2_task.c index c44d3827d47..1d95496d2d1 100644 --- a/modules/http2/h2_task.c +++ b/modules/http2/h2_task.c @@ -397,6 +397,8 @@ static apr_status_t h2_task_process_request(h2_task *task) * will result in a segfault immediately instead * of nondeterministic failures later. */ + if (cs) + cs->state = CONN_STATE_WRITE_COMPLETION; r = NULL; } ap_update_child_status(c->sbh, SERVER_BUSY_WRITE, NULL);