diff options
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r-- | src/os/unix/ngx_process_cycle.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c index ffa9dfec7..2a165bfa3 100644 --- a/src/os/unix/ngx_process_cycle.c +++ b/src/os/unix/ngx_process_cycle.c @@ -838,6 +838,15 @@ ngx_worker_process_init(ngx_cycle_t *cycle, ngx_uint_t priority) #endif + if (ccf->working_directory.len) { + if (chdir(ccf->working_directory.data) == -1) { + ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno, + "chdir(\"%s\") failed", ccf->working_directory.data); + /* fatal */ + exit(2); + } + } + sigemptyset(&set); if (sigprocmask(SIG_SETMASK, &set, NULL) == -1) { |