# HG changeset patch # User Igor Sysoev # Date 1241599993 0 # Node ID b7b2b0ea3366c109bf4a64edd72669df22eee26e # Parent 6ad4bba6313e0eeb26fa191ebd45d31c7799e7fa test event type to prevent errors diff --git a/src/event/modules/ngx_select_module.c b/src/event/modules/ngx_select_module.c --- a/src/event/modules/ngx_select_module.c +++ b/src/event/modules/ngx_select_module.c @@ -147,6 +147,16 @@ ngx_select_add_event(ngx_event_t *ev, ng return NGX_OK; } + if ((event == NGX_READ_EVENT && ev->write) + || (event == NGX_WRITE_EVENT && !ev->write)) + { + ngx_log_error(NGX_LOG_ALERT, ev->log, 0, + "invalid select %s event fd:%d ev:%i", + ev->write ? "write" : "read", c->fd, event); + return NGX_ERROR; + } + + #if (NGX_WIN32) if ((event == NGX_READ_EVENT) && (max_read >= FD_SETSIZE)