From: Maxim Dounin Date: Thu, 18 Aug 2011 15:27:57 +0000 (+0000) Subject: Correctly set body if it's preread and there are extra data. X-Git-Tag: release-1.1.1~15 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=f48b45119557790fc26f7d4b3d081ea6f27c9301;p=nginx.git Correctly set body if it's preread and there are extra data. Previously all available data was used as body, resulting in garbage after real body e.g. in case of pipelined requests. Make sure to use only as many bytes as request's Content-Length specifies. --- diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c index be311a612..57c201b9b 100644 --- a/src/http/ngx_http_request_body.c +++ b/src/http/ngx_http_request_body.c @@ -143,6 +143,7 @@ ngx_http_read_client_request_body(ngx_http_request_t *r, r->header_in->pos += (size_t) r->headers_in.content_length_n; r->request_length += r->headers_in.content_length_n; + b->last = r->header_in->pos; if (r->request_body_in_file_only) { if (ngx_http_write_request_body(r, rb->bufs) != NGX_OK) {