be how many bytes we read. This trounces on the r->remaining value, so
we must use a local variable and subtract that from r->remaining after we
read.
Reviewed by: Aaron Bannert
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@91413
13f79535-47bb-0310-9956-
ffa450edef68
do {
if (APR_BRIGADE_EMPTY(bb)) {
+ len_read = r->remaining;
if (ap_get_brigade(r->input_filters, bb, AP_MODE_BLOCKING,
- &r->remaining) != APR_SUCCESS) {
+ &len_read) != APR_SUCCESS) {
/* if we actually fail here, we want to just return and
* stop trying to read data from the client.
*/
apr_brigade_destroy(bb);
return -1;
}
+ r->remaining -= len_read;
}
} while (APR_BRIGADE_EMPTY(bb));