Mercurial > hg > nginx
diff src/event/modules/ngx_select_module.c @ 6:669801705ab1
nginx-0.0.1-2002-08-26-19:18:19 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 26 Aug 2002 15:18:19 +0000 |
parents | 4eff17414a43 |
children | b5481d6fbbd4 |
line wrap: on
line diff
--- a/src/event/modules/ngx_select_module.c Fri Aug 23 16:14:30 2002 +0000 +++ b/src/event/modules/ngx_select_module.c Mon Aug 26 15:18:19 2002 +0000 @@ -23,7 +23,7 @@ static ngx_event_t timer_queue; -static void ngx_add_timer(ngx_event_t *ev, u_int timer); +static void ngx_add_timer_core(ngx_event_t *ev, u_int timer); static void ngx_inline ngx_del_timer(ngx_event_t *ev); static fd_set *ngx_select_get_fd_set(ngx_socket_t fd, int event, @@ -31,19 +31,17 @@ void ngx_select_init(int max_connections, ngx_log_t *log) { -#if (WIN32) - if (max_connections > FD_SETSIZE) + if (max_connections > FD_SETSIZE) { ngx_log_error(NGX_LOG_EMERG, log, 0, - "ngx_select_init: maximum number of descriptors " - "supported by select() is %d", - FD_SETSIZE); +#if (WIN32) + "maximum number of descriptors " + "supported by select() is %d", FD_SETSIZE); #else - if (max_connections >= FD_SETSIZE) - ngx_log_error(NGX_LOG_EMERG, log, 0, - "ngx_select_init: maximum descriptor number" - "supported by select() is %d", - FD_SETSIZE - 1); + "maximum descriptor number" + "supported by select() is %d", FD_SETSIZE - 1); #endif + exit(1); + } FD_ZERO(&master_read_fds); FD_ZERO(&master_write_fds); @@ -71,7 +69,7 @@ ngx_connection_t *cn = (ngx_connection_t *) ev->data; if (event == NGX_TIMER_EVENT) { - ngx_add_timer(ev, flags); + ngx_add_timer_core(ev, flags); return 0; } @@ -271,8 +269,14 @@ delta -= ev->timer_delta; nx = ev->timer_next; ngx_del_timer(ev); +#if 1 + ev->timedout = 1; + if (ev->event_handler(ev) == -1) + ev->close_handler(ev); +#else if (ev->timer_handler(ev) == -1) ev->close_handler(ev); +#endif ev = nx; } @@ -316,7 +320,7 @@ return 0; } -static void ngx_add_timer(ngx_event_t *ev, u_int timer) +static void ngx_add_timer_core(ngx_event_t *ev, u_int timer) { ngx_event_t *e;