summaryrefslogtreecommitdiffhomepage
path: root/src/http/ngx_http_request_body.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/http/ngx_http_request_body.c')
-rw-r--r--src/http/ngx_http_request_body.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
index c54674eb9..9f1260c6f 100644
--- a/src/http/ngx_http_request_body.c
+++ b/src/http/ngx_http_request_body.c
@@ -37,6 +37,9 @@ ngx_int_t ngx_http_read_client_request_body(ngx_http_request_t *r)
/* the whole request body was pre-read */
r->header_in->pos += r->headers_in.content_length_n;
+
+ r->request_body->handler(r->request_body->data);
+
return NGX_OK;
}
@@ -84,6 +87,11 @@ static void ngx_http_read_client_request_body_handler(ngx_event_t *rev)
c = rev->data;
r = c->data;
+ if (rev->timedout) {
+ ngx_http_finalize_request(r, NGX_HTTP_REQUEST_TIME_OUT);
+ return;
+ }
+
rc = ngx_http_do_read_client_request_body(r);
if (rc >= NGX_HTTP_SPECIAL_RESPONSE) {