# HG changeset patch # User Bart Warmerdam # Date 1497871542 -10800 # Node ID a39bc74873faf9e5bea616561b43f6ecc55229f9 # Parent d1816a2696de8c2faa1cd913a151e5f62a8620f3 Resolver: fixed allocation error handling while resolving SRV. diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c --- a/src/core/ngx_resolver.c +++ b/src/core/ngx_resolver.c @@ -443,7 +443,7 @@ ngx_resolve_name(ngx_resolver_ctx_t *ctx name.data = ngx_resolver_alloc(r, name.len); if (name.data == NULL) { - return NGX_ERROR; + goto failed; } if (slen == ctx->service.len) { @@ -481,6 +481,8 @@ ngx_resolve_name(ngx_resolver_ctx_t *ctx ngx_resolver_free(r, ctx->event); } +failed: + ngx_resolver_free(r, ctx); return NGX_ERROR;