From 26489b16e5abc76eb1b72e37651d01a1e1a657cb Mon Sep 17 00:00:00 2001 From: Vladimir Homutov Date: Tue, 4 Jun 2013 11:27:36 +0400 Subject: Core: fixed handling of "stderr" in error_log. If "stderr" was specified in one of the "error_log" directives, stderr is not redirected to the first error_log on startup, configuration reload, and reopening log files. --- src/core/ngx_cycle.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/core/ngx_cycle.c') diff --git a/src/core/ngx_cycle.c b/src/core/ngx_cycle.c index 40b8562b4..de817750c 100644 --- a/src/core/ngx_cycle.c +++ b/src/core/ngx_cycle.c @@ -582,8 +582,9 @@ ngx_init_cycle(ngx_cycle_t *old_cycle) /* commit the new cycle configuration */ - if (!ngx_use_stderr && cycle->log->file->fd != ngx_stderr) { - + if (!ngx_use_stderr && !cycle->log_use_stderr + && cycle->log->file->fd != ngx_stderr) + { if (ngx_set_stderr(cycle->log->file->fd) == NGX_FILE_ERROR) { ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno, ngx_set_stderr_n " failed"); @@ -1228,7 +1229,7 @@ ngx_reopen_files(ngx_cycle_t *cycle, ngx_uid_t user) file[i].fd = fd; } - if (cycle->log->file->fd != ngx_stderr) { + if (!cycle->log_use_stderr && cycle->log->file->fd != ngx_stderr) { if (ngx_set_stderr(cycle->log->file->fd) == NGX_FILE_ERROR) { ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno, -- cgit