From 566dfe0c7fc4ca8405cbed3f9cdacea29d584055 Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Mon, 22 Aug 2011 12:34:48 +0000 Subject: [PATCH] SIGWINCH/NOACCEPT signal is disabled now in non-daemon mode. Non-daemon mode is currently used by supervisord, daemontools and so on or during debugging. The NOACCEPT signal is only used for online upgrade which is not supported when nginx is run under supervisord, etc., so this change should not break existant setups. --- src/os/unix/ngx_process.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/os/unix/ngx_process.c b/src/os/unix/ngx_process.c index 605558786..ad2fc19de 100644 --- a/src/os/unix/ngx_process.c +++ b/src/os/unix/ngx_process.c @@ -339,8 +339,10 @@ ngx_signal_handler(int signo) break; case ngx_signal_value(NGX_NOACCEPT_SIGNAL): - ngx_noaccept = 1; - action = ", stop accepting connections"; + if (ngx_daemonized) { + ngx_noaccept = 1; + action = ", stop accepting connections"; + } break; case ngx_signal_value(NGX_RECONFIGURE_SIGNAL): @@ -392,6 +394,9 @@ ngx_signal_handler(int signo) switch (signo) { case ngx_signal_value(NGX_NOACCEPT_SIGNAL): + if (!ngx_daemonized) { + break; + } ngx_debug_quit = 1; case ngx_signal_value(NGX_SHUTDOWN_SIGNAL): ngx_quit = 1;