nginx-0.0.3-2004-03-30-19:59:50 import
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
index c54674e..9f1260c 100644
--- a/src/http/ngx_http_request_body.c
+++ b/src/http/ngx_http_request_body.c
@@ -37,6 +37,9 @@
             /* 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 @@
     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) {