diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/ngx_resolver.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c index e140ab67a..a18fd1fde 100644 --- 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; |