From f48b45119557790fc26f7d4b3d081ea6f27c9301 Mon Sep 17 00:00:00 2001 From: Maxim Dounin Date: Thu, 18 Aug 2011 15:27:57 +0000 Subject: [PATCH] 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. --- src/http/ngx_http_request_body.c | 1 + 1 file changed, 1 insertion(+) 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) {