aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_process_cycle.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2005-06-07 15:56:31 +0000
committerIgor Sysoev <igor@sysoev.ru>2005-06-07 15:56:31 +0000
commit7b190b41b0d9885e523f3efd9efcbf94b6abe961 (patch)
tree4a5e4edda3e4a287a4343e341df38b9c7495ee82 /src/os/unix/ngx_process_cycle.c
parent3c8b02a267b310fb0926ee3c63196f976720e113 (diff)
downloadnginx-7b190b41b0d9885e523f3efd9efcbf94b6abe961.tar.gz
nginx-7b190b41b0d9885e523f3efd9efcbf94b6abe961.zip
nginx-0.1.35-RELEASE importrelease-0.1.35
*) 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; the bug had 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"; the bug had appeared in 0.1.28.
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) {