diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2012-05-04 11:35:22 +0000 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2012-05-04 11:35:22 +0000 |
commit | e0e1c4567cb5f23fae5201e3a167aa788d35696b (patch) | |
tree | 0c477fd4a883deb1fd5cb06e6d386e7afb6fc398 /src | |
parent | 700364f62dedba8f1b0b1ad965bf7d6425b02201 (diff) | |
download | nginx-e0e1c4567cb5f23fae5201e3a167aa788d35696b.tar.gz nginx-e0e1c4567cb5f23fae5201e3a167aa788d35696b.zip |
Added write event handler reset in ngx_http_named_location().
On internal redirects this happens via ngx_http_handler() call, which is
not called on named location redirect. As a result incorrect write handler
remained (if previously set) and this might cause incorrect behaviour (likely
request hang).
Patch by Yichun Zhang (agentzh).
Diffstat (limited to 'src')
-rw-r--r-- | src/http/ngx_http_core_module.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c index 42dd6644e..29b918eaa 100644 --- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -2599,6 +2599,7 @@ ngx_http_named_location(ngx_http_request_t *r, ngx_str_t *name) r->phase_handler = cmcf->phase_engine.location_rewrite_index; + r->write_event_handler = ngx_http_core_run_phases; ngx_http_core_run_phases(r); return NGX_DONE; |