You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by br...@apache.org on 2006/01/22 04:35:48 UTC
svn commit: r371175 -
/httpd/httpd/branches/async-read-dev/server/core_filters.c
Author: brianp
Date: Sat Jan 21 19:35:46 2006
New Revision: 371175
URL: http://svn.apache.org/viewcvs?rev=371175&view=rev
Log:
Buffer partial lines within ap_core_input_filter() when doing
AP_MODE_GETLINE reads on a nonblocking connection
Modified:
httpd/httpd/branches/async-read-dev/server/core_filters.c
Modified: httpd/httpd/branches/async-read-dev/server/core_filters.c
URL: http://svn.apache.org/viewcvs/httpd/httpd/branches/async-read-dev/server/core_filters.c?rev=371175&r1=371174&r2=371175&view=diff
==============================================================================
--- httpd/httpd/branches/async-read-dev/server/core_filters.c (original)
+++ httpd/httpd/branches/async-read-dev/server/core_filters.c Sat Jan 21 19:35:46 2006
@@ -153,12 +153,8 @@
if (mode == AP_MODE_GETLINE) {
/* we are reading a single LF line, e.g. the HTTP headers */
rv = apr_brigade_split_line(b, ctx->b, block, HUGE_STRING_LEN);
- /* We should treat EAGAIN here the same as we do for EOF (brigade is
- * empty). We do this by returning whatever we have read. This may
- * or may not be bogus, but is consistent (for now) with EOF logic.
- */
if (APR_STATUS_IS_EAGAIN(rv)) {
- rv = APR_SUCCESS;
+ APR_BRIGADE_PREPEND(ctx->b, b);
}
return rv;
}