diff options
Diffstat (limited to 'src/core/ngx_cycle.c')
-rw-r--r-- | src/core/ngx_cycle.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c index 15f8e8d24..251892b74 100644 --- a/src/core/ngx_cycle.c +++ b/src/core/ngx_cycle.c @@ -82,6 +82,7 @@ ngx_init_cycle(ngx_cycle_t *old_cycle) cycle->pool = pool; cycle->log = log; + cycle->new_log.log_level = NGX_LOG_ERR; cycle->old_cycle = old_cycle; cycle->conf_prefix.len = old_cycle->conf_prefix.len; @@ -165,14 +166,6 @@ ngx_init_cycle(ngx_cycle_t *old_cycle) return NULL; } - - cycle->new_log = ngx_log_create_errlog(cycle, &error_log); - if (cycle->new_log == NULL) { - ngx_destroy_pool(pool); - return NULL; - } - - n = old_cycle->listening.nelts ? old_cycle->listening.nelts : 10; cycle->listening.elts = ngx_pcalloc(pool, n * sizeof(ngx_listening_t)); @@ -336,6 +329,13 @@ ngx_init_cycle(ngx_cycle_t *old_cycle) } + if (cycle->new_log.file == NULL) { + cycle->new_log.file = ngx_conf_open_file(cycle, &error_log); + if (cycle->new_log.file == NULL) { + goto failed; + } + } + /* open the new files */ part = &cycle->open_files.part; @@ -382,12 +382,8 @@ ngx_init_cycle(ngx_cycle_t *old_cycle) #endif } - cycle->log = cycle->new_log; - pool->log = cycle->new_log; - - if (cycle->log->log_level == 0) { - cycle->log->log_level = NGX_LOG_ERR; - } + cycle->log = &cycle->new_log; + pool->log = &cycle->new_log; /* create shared memory */ |