summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2011-09-05 12:43:31 +0000
committerMaxim Dounin <mdounin@mdounin.ru>2011-09-05 12:43:31 +0000
commitbfbbfc85df89874cc9995436c19a7f997a28cef6 (patch)
tree6d64e97d5851fd45b0ad0f9802240ac2f9b00bcd
parent3541ab2d79105c5d3d7d19a117250aae268528a8 (diff)
downloadnginx-bfbbfc85df89874cc9995436c19a7f997a28cef6.tar.gz
nginx-bfbbfc85df89874cc9995436c19a7f997a28cef6.tar.bz2
Bugfix: read event was not blocked after reading body.
Read event should be blocked after reading body, else undefined behaviour might occur on additional client activity. This fixes segmentation faults observed with proxy_ignore_client_abort set.
-rw-r--r--src/http/ngx_http_request_body.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
index 03053c86a..817b48e45 100644
--- a/src/http/ngx_http_request_body.c
+++ b/src/http/ngx_http_request_body.c
@@ -378,6 +378,8 @@ ngx_http_do_read_client_request_body(ngx_http_request_t *r)
rb->bufs = rb->bufs->next;
}
+ r->read_event_handler = ngx_http_block_reading;
+
rb->post_handler(r);
return NGX_OK;