mirror of https://github.com/openresty/openresty
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
866 B
Diff
28 lines
866 B
Diff
14 years ago
|
# HG changeset patch
|
||
|
# User Maxim Dounin <mdounin@mdounin.ru>
|
||
|
# Date 1309799136 -14400
|
||
|
# Node ID 99e276bba8596bc4df9e638482ee413f4c6bf700
|
||
|
# Parent e7b2f945d55ae44a2295facf9e3336dc4633e5b5
|
||
|
Core: fix body with request_body_in_single_buf.
|
||
|
|
||
|
If there were preread data and request body was big enough first part
|
||
|
of request body was duplicated.
|
||
|
|
||
|
See report here:
|
||
|
http://nginx.org/pipermail/nginx/2011-July/027756.html
|
||
|
|
||
|
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
|
||
|
--- 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
|
||
|
}
|
||
|
}
|
||
|
|
||
|
- 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;
|
||
|
}
|
||
|
|