Mercurial > hg > nginx-quic
comparison src/http/ngx_http_request.c @ 4666:0bb016b1fd2d stable-1.2
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
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Mon, 04 Jun 2012 11:15:46 +0000 |
parents | 6c20a377b883 |
children | 01dbbe7236ee |
comparison
equal
deleted
inserted
replaced
4665:25611746fee7 | 4666:0bb016b1fd2d |
---|---|
1931 return; | 1931 return; |
1932 } | 1932 } |
1933 | 1933 |
1934 if (rc == NGX_OK && r->filter_finalize) { | 1934 if (rc == NGX_OK && r->filter_finalize) { |
1935 c->error = 1; | 1935 c->error = 1; |
1936 return; | |
1937 } | 1936 } |
1938 | 1937 |
1939 if (rc == NGX_DECLINED) { | 1938 if (rc == NGX_DECLINED) { |
1940 r->content_handler = NULL; | 1939 r->content_handler = NULL; |
1941 r->write_event_handler = ngx_http_core_run_phases; | 1940 r->write_event_handler = ngx_http_core_run_phases; |