# HG changeset patch # User Igor Sysoev # Date 1237058657 0 # Node ID 5e7d590cd70439e6f931003655d3c265b3f3f921 # Parent 456e453eb84a6c10dd0e68689512e4258091e282 fix case when regex locaiton runs the second time via internal redirect diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c --- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c @@ -1378,13 +1378,15 @@ ngx_http_core_find_location(ngx_http_req ngx_log_debug1(NGX_LOG_DEBUG_HTTP, r->connection->log, 0, "test location: ~ \"%V\"", &(*clcfp)->name); - if ((*clcfp)->captures && r->captures == NULL) { + if ((*clcfp)->captures) { len = (NGX_HTTP_MAX_CAPTURES + 1) * 3; - r->captures = ngx_palloc(r->pool, len * sizeof(int)); if (r->captures == NULL) { - return NGX_ERROR; + r->captures = ngx_palloc(r->pool, len * sizeof(int)); + if (r->captures == NULL) { + return NGX_ERROR; + } } }