From ee23bba892e3b02ff6a0b4d70425117233f08c6b Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Tue, 7 Jun 2005 15:48:02 +0000 Subject: Changes with nginx 0.1.35 07 Jun 2005 *) Feature: the "working_directory" directive. *) Feature: the "port_in_redirect" directive. *) Bugfix: the segmentation fault was occurred if the backend response header was in several packets; bug appeared in 0.1.29. *) Bugfix: if more than 10 servers were configured or some server did not use the "listen" directive, then the segmentation fault was occurred on the start. *) Bugfix: the segmentation fault might occur if the response was bigger than the temporary file. *) Bugfix: nginx returned the 400 response on requests like "GET http://www.domain.com/uri HTTP/1.0"; bug appeared in 0.1.28. --- src/os/unix/ngx_process_cycle.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/os/unix/ngx_process_cycle.c') 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) { -- cgit v1.2.1