nginx-0.0.3-2004-03-30-19:59:50 import
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 86321b5..21cce74 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -38,7 +38,7 @@
     "client %s sent invalid header, URL: %s",
     "client %s sent too long header line, URL: %s",
     "client %s sent HTTP/1.1 request without \"Host\" header, URL: %s",
-    "client %s sent invalid \"Content-Length\" header, URL: %s"
+    "client %s sent invalid \"Content-Length\" header, URL: %s",
     "client %s sent POST method without \"Content-Length\" header, URL: %s"
 };
 
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) {