comparison src/event/modules/ngx_poll_module.c @ 259:d30f2c39caae

nginx-0.0.2-2004-02-12-23:57:10 import
author Igor Sysoev <igor@sysoev.ru>
date Thu, 12 Feb 2004 20:57:10 +0000
parents b6793bc5034b
children bdd631bf1a1c
comparison
equal deleted inserted replaced
258:733dffa1fe97 259:d30f2c39caae
144 ev->index = nevents; 144 ev->index = nevents;
145 nevents++; 145 nevents++;
146 146
147 } else { 147 } else {
148 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0, 148 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0,
149 "poll index: %d", e->index); 149 "poll add index: %d", e->index);
150 150
151 event_list[e->index].events |= event; 151 event_list[e->index].events |= event;
152 ev->index = e->index; 152 ev->index = e->index;
153 } 153 }
154 154
193 193
194 if (e == NULL || e->index == NGX_INVALID_INDEX) { 194 if (e == NULL || e->index == NGX_INVALID_INDEX) {
195 nevents--; 195 nevents--;
196 196
197 if (ev->index < (u_int) nevents) { 197 if (ev->index < (u_int) nevents) {
198
199 ngx_log_debug2(NGX_LOG_DEBUG_EVENT, ev->log, 0,
200 "index: copy event %d to %d", nevents, ev->index);
201
198 event_list[ev->index] = event_list[nevents]; 202 event_list[ev->index] = event_list[nevents];
199 203
200 c = &ngx_cycle->connections[event_list[nevents].fd]; 204 c = &ngx_cycle->connections[event_list[nevents].fd];
201 205
202 if (c->fd == -1) { 206 if (c->fd == -1) {
217 "unexpected last event"); 221 "unexpected last event");
218 222
219 } else { 223 } else {
220 if (c->read->index == (u_int) nevents) { 224 if (c->read->index == (u_int) nevents) {
221 c->read->index = ev->index; 225 c->read->index = ev->index;
222 226 }
223 } else if (c->write->index == (u_int) nevents) { 227
228 if (c->write->index == (u_int) nevents) {
224 c->write->index = ev->index; 229 c->write->index = ev->index;
225
226 } else {
227 ngx_log_error(NGX_LOG_ALERT, ev->log, 0,
228 "unexpected last event index");
229 } 230 }
230 } 231 }
231 } 232 }
232 233
233 } else { 234 } else {
234 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0, 235 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, ev->log, 0,
235 "poll index: %d", e->index); 236 "poll del index: %d", e->index);
236 237
237 event_list[e->index].events &= ~event; 238 event_list[e->index].events &= ~event;
238 } 239 }
239 240
240 ev->active = 0; 241 ev->active = 0;