changeset 7027:6d0e0d982ec0

Fixed segfault in try_files with nested location. If memory allocation of a new r->uri.data storage failed, reset its length as well. Request URI is used in ngx_http_finalize_request() for debug logging.
author Sergey Kandaurov <pluknet@nginx.com>
date Wed, 07 Jun 2017 18:46:35 +0300
parents e699e6b6d76c
children e6f399a176e7
files src/http/ngx_http_core_module.c
diffstat 1 files changed, 1 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/http/ngx_http_core_module.c
+++ b/src/http/ngx_http_core_module.c
@@ -1353,6 +1353,7 @@ ngx_http_core_try_files_phase(ngx_http_r
             r->uri.len = alias + path.len;
             r->uri.data = ngx_pnalloc(r->pool, r->uri.len);
             if (r->uri.data == NULL) {
+                r->uri.len = 0;
                 ngx_http_finalize_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR);
                 return NGX_OK;
             }