You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ic...@apache.org on 2017/03/29 06:31:47 UTC
svn commit: r1789276 - in /httpd/httpd/trunk/modules/http2: h2_util.c
h2_workers.c
Author: icing
Date: Wed Mar 29 06:31:46 2017
New Revision: 1789276
URL: http://svn.apache.org/viewvc?rev=1789276&view=rev
Log:
On the trunk:
mod_http2 after review by Christophe:
* fix h2_fifo_peek to properly block
* check peek return status while processing mplx queue
Modified:
httpd/httpd/trunk/modules/http2/h2_util.c
httpd/httpd/trunk/modules/http2/h2_workers.c
Modified: httpd/httpd/trunk/modules/http2/h2_util.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_util.c?rev=1789276&r1=1789275&r2=1789276&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http2/h2_util.c (original)
+++ httpd/httpd/trunk/modules/http2/h2_util.c Wed Mar 29 06:31:46 2017
@@ -846,7 +846,7 @@ static apr_status_t fifo_peek(h2_fifo *f
apr_status_t h2_fifo_peek(h2_fifo *fifo, h2_fifo_peek_fn *fn, void *ctx)
{
- return fifo_peek(fifo, fn, ctx, 0);
+ return fifo_peek(fifo, fn, ctx, 1);
}
apr_status_t h2_fifo_try_peek(h2_fifo *fifo, h2_fifo_peek_fn *fn, void *ctx)
Modified: httpd/httpd/trunk/modules/http2/h2_workers.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_workers.c?rev=1789276&r1=1789275&r2=1789276&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/http2/h2_workers.c (original)
+++ httpd/httpd/trunk/modules/http2/h2_workers.c Wed Mar 29 06:31:46 2017
@@ -134,6 +134,9 @@ static apr_status_t get_next(h2_slot *sl
while (!slot->aborted) {
if (!slot->task) {
status = h2_fifo_try_peek(workers->mplxs, mplx_peek, slot);
+ if (status == APR_EOF) {
+ return status;
+ }
}
if (slot->task) {