nginx-0.0.2-2004-02-04-23:30:08 import
diff --git a/src/core/nginx.c b/src/core/nginx.c index 21a22d0..43f40c5 100644 --- a/src/core/nginx.c +++ b/src/core/nginx.c
@@ -221,7 +221,7 @@ } -/* TODO: broken single process */ +/* TODO: broken NGX_PROCESS_SINGLE */ static void ngx_master_process_cycle(ngx_cycle_t *cycle, ngx_master_ctx_t *ctx) { @@ -634,6 +634,12 @@ ngx_log_debug0(NGX_LOG_DEBUG_EVENT, cycle->log, 0, "worker cycle"); ngx_process_events(cycle->log); + + if (ngx_reopen) { + ngx_log_error(NGX_LOG_INFO, cycle->log, 0, "reopen logs"); + ngx_reopen_files(cycle, -1); + ngx_reopen = 0; + } } }
diff --git a/src/event/modules/ngx_poll_module.c b/src/event/modules/ngx_poll_module.c index 8e3175a..cba51e0 100644 --- a/src/event/modules/ngx_poll_module.c +++ b/src/event/modules/ngx_poll_module.c
@@ -312,6 +312,13 @@ event_list[i].events, event_list[i].revents); } + if (event_list[i].fd == -1) { + + /* the disabled event, workaround for our possible bug */ + + continue; + } + c = &ngx_cycle->connections[event_list[i].fd]; if (c->fd == -1) {
diff --git a/src/os/unix/ngx_posix_init.c b/src/os/unix/ngx_posix_init.c index b76a9af..4e72339 100644 --- a/src/os/unix/ngx_posix_init.c +++ b/src/os/unix/ngx_posix_init.c
@@ -144,14 +144,9 @@ break; case ngx_signal_value(NGX_REOPEN_SIGNAL): - if (ngx_noaccept) { - action = ", ignoring"; - - } else { - ngx_reopen = 1; - action = ", reopen logs"; - break; - } + ngx_reopen = 1; + action = ", reopen logs"; + break; case ngx_signal_value(NGX_CHANGEBIN_SIGNAL): if ((ngx_inherited && getppid() > 1)