diff options
author | Igor Sysoev <igor@sysoev.ru> | 2008-02-19 16:30:54 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2008-02-19 16:30:54 +0000 |
commit | bb7c84159f948bb95836d6a54c1046457c44df18 (patch) | |
tree | 16f9325714a8271069e92a3a00ba9bb155e4c255 /src/os/unix/ngx_process_cycle.c | |
parent | 5fe93ee95ff40e602e21e0dd37ef6c4960a3e090 (diff) | |
download | nginx-bb7c84159f948bb95836d6a54c1046457c44df18.tar.gz nginx-bb7c84159f948bb95836d6a54c1046457c44df18.zip |
avoid endless loop if epoll is used
Diffstat (limited to 'src/os/unix/ngx_process_cycle.c')
-rw-r--r-- | src/os/unix/ngx_process_cycle.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c index aa95e81d9..96387f04a 100644 --- a/src/os/unix/ngx_process_cycle.c +++ b/src/os/unix/ngx_process_cycle.c @@ -1059,6 +1059,11 @@ ngx_channel_handler(ngx_event_t *ev) ngx_log_debug1(NGX_LOG_DEBUG_CORE, ev->log, 0, "channel: %i", n); if (n == NGX_ERROR) { + + if (ngx_event_flags & NGX_USE_EPOLL_EVENT) { + ngx_del_conn(c, 0); + } + ngx_close_connection(c); return; } |