aboutsummaryrefslogtreecommitdiff
path: root/src/os/unix/ngx_process_cycle.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2005-12-07 14:51:31 +0000
committerIgor Sysoev <igor@sysoev.ru>2005-12-07 14:51:31 +0000
commitcdc463042b9406e4703d21202bc363e86321bb5d (patch)
tree1f6d050377dafbf42bb3d7c8c7e15e86939500ff /src/os/unix/ngx_process_cycle.c
parentc20f0c28ff5478dcafd2ce2e5056da3757eb62ff (diff)
downloadnginx-cdc463042b9406e4703d21202bc363e86321bb5d.tar.gz
nginx-cdc463042b9406e4703d21202bc363e86321bb5d.zip
nginx-0.3.15-RELEASE importrelease-0.3.15
*) Feature: the new 444 code of the "return" directive to close connection. *) Feature: the "so_keepalive" directive in IMAP/POP3 proxy. *) Bugfix: if there are unclosed connection nginx now calls abort() only on gracefull quit and active "debug_points" directive.
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r--src/os/unix/ngx_process_cycle.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c
index 7adcc6ef7..14bbe80b2 100644
--- a/src/os/unix/ngx_process_cycle.c
+++ b/src/os/unix/ngx_process_cycle.c
@@ -938,23 +938,25 @@ ngx_worker_process_exit(ngx_cycle_t *cycle)
}
}
- c = cycle->connections;
- for (i = 0; i < cycle->connection_n; i++) {
- if (c[i].fd != -1
- && c[i].read
- && !c[i].read->accept
- && !c[i].read->channel)
- {
- ngx_log_error(NGX_LOG_ALERT, cycle->log, 0,
- "open socket #%d left in %ui connection, "
- "aborting",
- c[i].fd, i);
- ngx_abort();
+ if (ngx_quit) {
+ c = cycle->connections;
+ for (i = 0; i < cycle->connection_n; i++) {
+ if (c[i].fd != -1
+ && c[i].read
+ && !c[i].read->accept
+ && !c[i].read->channel)
+ {
+ ngx_log_error(NGX_LOG_ALERT, cycle->log, 0,
+ "open socket #%d left in %ui connection, "
+ "aborting",
+ c[i].fd, i);
+ ngx_debug_point();
+ }
}
- }
- if (ngx_debug_quit) {
- ngx_debug_point();
+ if (ngx_debug_quit) {
+ ngx_debug_point();
+ }
}
/*