diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2011-08-18 15:52:00 +0000 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2011-08-18 15:52:00 +0000 |
commit | b09ceca2610410f2be67c3c41a92aa80d7952d50 (patch) | |
tree | 43df4657c052fb1b0f8f5761cc0f55f1cd224655 /src/http/ngx_http_request_body.c | |
parent | f48b45119557790fc26f7d4b3d081ea6f27c9301 (diff) | |
download | nginx-b09ceca2610410f2be67c3c41a92aa80d7952d50.tar.gz nginx-b09ceca2610410f2be67c3c41a92aa80d7952d50.zip |
Fix body with request_body_in_single_buf.
If there were preread data and request body was big enough first part
of the request body was duplicated.
See report here:
http://mailman.nginx.org/pipermail/nginx/2011-July/027756.html
Diffstat (limited to 'src/http/ngx_http_request_body.c')
-rw-r--r-- | src/http/ngx_http_request_body.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c index 57c201b9b..03053c86a 100644 --- a/src/http/ngx_http_request_body.c +++ b/src/http/ngx_http_request_body.c @@ -372,7 +372,9 @@ ngx_http_do_read_client_request_body(ngx_http_request_t *r) } } - if (r->request_body_in_file_only && rb->bufs->next) { + if (rb->bufs->next + && (r->request_body_in_file_only || r->request_body_in_single_buf)) + { rb->bufs = rb->bufs->next; } |