summaryrefslogtreecommitdiffhomepage
path: root/src/core/ngx_connection.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2004-04-15 15:34:36 +0000
committerIgor Sysoev <igor@sysoev.ru>2004-04-15 15:34:36 +0000
commit68df19d33ac5cf804650261867afd5f8acdce364 (patch)
tree5a49e42b41da04ea73eec12d0f402730e3268ca1 /src/core/ngx_connection.c
parentcccc5528945be46d6afb456e7aba751340af9089 (diff)
downloadnginx-68df19d33ac5cf804650261867afd5f8acdce364.tar.gz
nginx-68df19d33ac5cf804650261867afd5f8acdce364.tar.bz2
nginx-0.0.3-2004-04-15-19:34:36 import
Diffstat (limited to 'src/core/ngx_connection.c')
-rw-r--r--src/core/ngx_connection.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/core/ngx_connection.c b/src/core/ngx_connection.c
index 8dedbd10e..6382ec10c 100644
--- a/src/core/ngx_connection.c
+++ b/src/core/ngx_connection.c
@@ -228,7 +228,17 @@ void ngx_close_listening_sockets(ngx_cycle_t *cycle)
fd /= 4;
#endif
- ngx_del_event(&cycle->read_events[fd], NGX_READ_EVENT, NGX_CLOSE_EVENT);
+ if (ngx_event_flags & NGX_USE_SIGIO_EVENT) {
+ if (cycle->connections[fd].read->active) {
+ ngx_del_conn(&cycle->connections[fd], NGX_CLOSE_EVENT);
+ }
+
+ } else {
+ if (cycle->read_events[fd].active) {
+ ngx_del_event(&cycle->read_events[fd],
+ NGX_READ_EVENT, NGX_CLOSE_EVENT);
+ }
+ }
if (ngx_close_socket(ls[i].fd) == -1) {
ngx_log_error(NGX_LOG_EMERG, cycle->log, ngx_socket_errno,