diff --git a/src/core/ngx_connection.c b/src/core/ngx_connection.c index d4bb0648a..0a7fe847d 100644 --- a/src/core/ngx_connection.c +++ b/src/core/ngx_connection.c @@ -603,6 +603,8 @@ ngx_close_listening_sockets(ngx_cycle_t *cycle) ngx_log_error(NGX_LOG_EMERG, cycle->log, ngx_socket_errno, ngx_close_socket_n " %V failed", &ls[i].addr_text); } + + ls[i].fd = (ngx_socket_t) -1; } } diff --git a/src/os/win32/ngx_process_cycle.c b/src/os/win32/ngx_process_cycle.c index a10dbfdf6..12b13d17e 100644 --- a/src/os/win32/ngx_process_cycle.c +++ b/src/os/win32/ngx_process_cycle.c @@ -208,6 +208,8 @@ ngx_master_process_cycle(ngx_cycle_t *cycle) ngx_cycle = cycle; + ngx_close_listening_sockets(cycle); + if (ngx_start_worker_processes(cycle, NGX_PROCESS_JUST_RESPAWN)) { ngx_quit_worker_processes(cycle, 1); }