aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_process_cycle.c
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@nginx.com>2017-11-28 12:00:24 +0300
committerRuslan Ermilov <ru@nginx.com>2017-11-28 12:00:24 +0300
commitafad21917584e9b452ba33ce3485edde5615b859 (patch)
tree883222e33a8203c4023017f7536b040c48a881cb /src/os/unix/ngx_process_cycle.c
parent7a7fc708fb7f6739dc6652ee1f14da1f9e24650d (diff)
downloadnginx-afad21917584e9b452ba33ce3485edde5615b859.tar.gz
nginx-afad21917584e9b452ba33ce3485edde5615b859.zip
Fixed "changing binary" when reaper is not init.
On some systems, it's possible that reaper of orphaned processes is set to something other than "init" process. On such systems, the changing binary procedure did not work. The fix is to check if PPID has changed, instead of assuming it's always 1 for orphaned processes.
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r--src/os/unix/ngx_process_cycle.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c
index 1710ea812..a20a515c7 100644
--- a/src/os/unix/ngx_process_cycle.c
+++ b/src/os/unix/ngx_process_cycle.c
@@ -31,6 +31,7 @@ static void ngx_cache_loader_process_handler(ngx_event_t *ev);
ngx_uint_t ngx_process;
ngx_uint_t ngx_worker;
ngx_pid_t ngx_pid;
+ngx_pid_t ngx_parent;
sig_atomic_t ngx_reap;
sig_atomic_t ngx_sigio;