use cf->cycle->new_log because at merge stage cf->pool->log is old log
diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c index eab57eb..9293803 100644 --- a/src/core/ngx_resolver.c +++ b/src/core/ngx_resolver.c
@@ -92,27 +92,27 @@ /* STUB: ngx_peer_addr_t * */ ngx_resolver_t * -ngx_resolver_create(ngx_pool_t *pool, ngx_peer_addr_t *addr) +ngx_resolver_create(ngx_conf_t *cf, ngx_peer_addr_t *addr) { ngx_resolver_t *r; ngx_pool_cleanup_t *cln; ngx_udp_connection_t *uc; - cln = ngx_pool_cleanup_add(pool, 0); + cln = ngx_pool_cleanup_add(cf->pool, 0); if (cln == NULL) { return NULL; } cln->handler = ngx_resolver_cleanup; - r = ngx_calloc(sizeof(ngx_resolver_t), pool->log); + r = ngx_calloc(sizeof(ngx_resolver_t), cf->log); if (r == NULL) { return NULL; } cln->data = r; - r->event = ngx_calloc(sizeof(ngx_event_t), pool->log); + r->event = ngx_calloc(sizeof(ngx_event_t), cf->log); if (r->event == NULL) { return NULL; } @@ -131,18 +131,18 @@ r->event->handler = ngx_resolver_resend_handler; r->event->data = r; - r->event->log = pool->log; + r->event->log = cf->cycle->new_log; r->ident = -1; r->resend_timeout = 5; r->expire = 30; r->valid = 300; - r->log = pool->log; + r->log = cf->cycle->new_log; r->log_level = NGX_LOG_ALERT; if (addr) { - uc = ngx_calloc(sizeof(ngx_udp_connection_t), pool->log); + uc = ngx_calloc(sizeof(ngx_udp_connection_t), cf->log); if (uc == NULL) { return NULL; } @@ -152,7 +152,7 @@ uc->sockaddr = addr->sockaddr; uc->socklen = addr->socklen; uc->server = addr->name; - uc->log = pool->log; + uc->log = cf->log; } return r;
diff --git a/src/core/ngx_resolver.h b/src/core/ngx_resolver.h index 6cf8a7f..8f8b060 100644 --- a/src/core/ngx_resolver.h +++ b/src/core/ngx_resolver.h
@@ -131,7 +131,7 @@ }; -ngx_resolver_t *ngx_resolver_create(ngx_pool_t *pool, ngx_peer_addr_t *addr); +ngx_resolver_t *ngx_resolver_create(ngx_conf_t *cf, ngx_peer_addr_t *addr); ngx_resolver_ctx_t *ngx_resolve_start(ngx_resolver_t *r, ngx_resolver_ctx_t *temp); ngx_int_t ngx_resolve_name(ngx_resolver_ctx_t *ctx);
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c index da27377..1830295 100644 --- a/src/http/ngx_http_core_module.c +++ b/src/http/ngx_http_core_module.c
@@ -2910,7 +2910,7 @@ conf->resolver = prev->resolver; if (conf->resolver == NULL) { - conf->resolver = ngx_resolver_create(cf->pool, NULL); + conf->resolver = ngx_resolver_create(cf, NULL); if (conf->resolver == NULL) { return NGX_CONF_ERROR; } @@ -3728,7 +3728,7 @@ return NGX_CONF_ERROR; } - clcf->resolver = ngx_resolver_create(cf->pool, &u.addrs[0]); + clcf->resolver = ngx_resolver_create(cf, &u.addrs[0]); if (clcf->resolver == NULL) { return NGX_OK; }
diff --git a/src/mail/ngx_mail_core_module.c b/src/mail/ngx_mail_core_module.c index 3af9fbf..15627d2 100644 --- a/src/mail/ngx_mail_core_module.c +++ b/src/mail/ngx_mail_core_module.c
@@ -437,7 +437,7 @@ return NGX_CONF_ERROR; } - cscf->resolver = ngx_resolver_create(cf->pool, &u.addrs[0]); + cscf->resolver = ngx_resolver_create(cf, &u.addrs[0]); if (cscf->resolver == NULL) { return NGX_CONF_OK; }