aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_process_cycle.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r--src/os/unix/ngx_process_cycle.c9
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) {