diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2012-06-04 11:15:46 +0000 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2012-06-04 11:15:46 +0000 |
commit | 228d4927f041ad3e060ae79bbcacfc83d01e8edd (patch) | |
tree | cee67c2736a5325b2ccd73951e59ba41ab3ea41a /src/http/ngx_http_request.c | |
parent | 9732c655154b182497fb47fa47fbba69ffd25897 (diff) | |
download | nginx-228d4927f041ad3e060ae79bbcacfc83d01e8edd.tar.gz nginx-228d4927f041ad3e060ae79bbcacfc83d01e8edd.zip |
Merge of r4621, r4641: filter_finalize fixes.
*) Fixed possible request hang with filter finalization.
With r->filter_finalize set the ngx_http_finalize_connection() wasn't
called from ngx_http_finalize_request() called with NGX_OK, resulting in
r->main->count not being decremented, thus causing request hang in some
rare situations.
Patch by Yichun Zhang (agentzh).
*) Fixed segfault with filter_finalize introduced in r4621 (1.3.0).
See the following thread for more details:
http://mailman.nginx.org/pipermail/nginx-devel/2012-May/002190.html
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r-- | src/http/ngx_http_request.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c index 59d4d4ae6..06f89d648 100644 --- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -1933,7 +1933,6 @@ ngx_http_finalize_request(ngx_http_request_t *r, ngx_int_t rc) if (rc == NGX_OK && r->filter_finalize) { c->error = 1; - return; } if (rc == NGX_DECLINED) { |