Mercurial > hg > nginx
changeset 4600:f1a7633b20a4
Fixed segfault with try_files (ticket #152).
The problem occured if first uri in try_files was shorter than request uri,
resulting in reserve being 0 and hence allocation skipped. The bug was
introduced in r4584 (1.1.19).
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 19 Apr 2012 15:48:03 +0000 |
parents | f947296f6b2b |
children | 084137d883ec |
files | src/http/ngx_http_core_module.c |
diffstat | 1 files changed, 1 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c Wed Apr 18 14:47:10 2012 +0000 +++ b/src/http/ngx_http_core_module.c Thu Apr 19 15:48:03 2012 +0000 @@ -1240,7 +1240,7 @@ reserve = len > r->uri.len - alias ? len - (r->uri.len - alias) : 0; } - if (reserve > allocated) { + if (reserve > allocated || !allocated) { /* 16 bytes are preallocation */ allocated = reserve + 16;