aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_process.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2004-01-08 21:02:06 +0000
committerIgor Sysoev <igor@sysoev.ru>2004-01-08 21:02:06 +0000
commitf2954c3e31ae45e560ddb9a7b4fa57fb9cbb47fa (patch)
tree6b3cbe3864ce23983f093d91f129e436f4156f2e /src/os/unix/ngx_process.c
parentf067799bffb5ed5b0a9b11c193f21dafcb6cfe60 (diff)
downloadnginx-f2954c3e31ae45e560ddb9a7b4fa57fb9cbb47fa.tar.gz
nginx-f2954c3e31ae45e560ddb9a7b4fa57fb9cbb47fa.zip
nginx-0.0.1-2004-01-09-00:02:06 import
Diffstat (limited to 'src/os/unix/ngx_process.c')
-rw-r--r--src/os/unix/ngx_process.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/os/unix/ngx_process.c b/src/os/unix/ngx_process.c
index 4d208c2e4..685b0d150 100644
--- a/src/os/unix/ngx_process.c
+++ b/src/os/unix/ngx_process.c
@@ -112,7 +112,7 @@ static void ngx_exec_proc(ngx_cycle_t *cycle, void *data)
}
-void ngx_signal_processes(ngx_cycle_t *cycle, ngx_int_t signal)
+void ngx_signal_processes(ngx_cycle_t *cycle, ngx_int_t signo)
{
ngx_uint_t i;
@@ -122,24 +122,26 @@ void ngx_signal_processes(ngx_cycle_t *cycle, ngx_int_t signal)
continue;
}
+#if 0
if (ngx_processes[i].exited) {
if (i != --ngx_last_process) {
ngx_processes[i--] = ngx_processes[ngx_last_process];
}
continue;
}
+#endif
ngx_log_debug2(NGX_LOG_DEBUG_CORE, cycle->log, 0,
"kill (" PID_T_FMT ", %d)" ,
- ngx_processes[i].pid, signal);
+ ngx_processes[i].pid, signo);
- if (kill(ngx_processes[i].pid, signal) == -1) {
+ if (kill(ngx_processes[i].pid, signo) == -1) {
ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno,
- "kill(%d, %d) failed", ngx_processes[i].pid, signal);
+ "kill(%d, %d) failed", ngx_processes[i].pid, signo);
continue;
}
- if (signal != ngx_signal_value(NGX_REOPEN_SIGNAL)) {
+ if (signo != ngx_signal_value(NGX_REOPEN_SIGNAL)) {
ngx_processes[i].exiting = 1;
}
}
@@ -151,7 +153,7 @@ void ngx_respawn_processes(ngx_cycle_t *cycle)
ngx_uint_t i;
for (i = 0; i < ngx_last_process; i++) {
- if (!ngx_processes[i].exited) {
+ if (ngx_processes[i].exiting || !ngx_processes[i].exited) {
continue;
}
@@ -212,11 +214,7 @@ void ngx_process_get_status()
for (i = 0; i < ngx_last_process; i++) {
if (ngx_processes[i].pid == pid) {
ngx_processes[i].status = status;
-
- if (!ngx_processes[i].exiting) {
- ngx_processes[i].exited = 1;
- }
-
+ ngx_processes[i].exited = 1;
process = ngx_processes[i].name;
break;
}