You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ji...@apache.org on 2007/02/07 15:26:38 UTC
svn commit: r504559 - /httpd/httpd/trunk/modules/http/http_filters.c
Author: jim
Date: Wed Feb 7 06:26:37 2007
New Revision: 504559
URL: http://svn.apache.org/viewvc?view=rev&rev=504559
Log:
Further refinement for PR41056 / PR 19954 (mostly-fixed in r480135.)
We assume that a successful read but an empty brigade
is NOT cause for EAGAIN. Testing may or may not
confirm this assumption, in which case that test
may be required as well.
Modified:
httpd/httpd/trunk/modules/http/http_filters.c
Modified: httpd/httpd/trunk/modules/http/http_filters.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http/http_filters.c?view=diff&rev=504559&r1=504558&r2=504559
==============================================================================
--- httpd/httpd/trunk/modules/http/http_filters.c (original)
+++ httpd/httpd/trunk/modules/http/http_filters.c Wed Feb 7 06:26:37 2007
@@ -295,6 +295,10 @@
rv = ap_get_brigade(f->next, bb, AP_MODE_GETLINE,
block, 0);
apr_brigade_cleanup(bb);
+ if (block == APR_NONBLOCK_READ &&
+ (APR_STATUS_IS_EAGAIN(rv))) {
+ return APR_EAGAIN;
+ }
} else {
rv = APR_SUCCESS;
}