comparison src/os/unix/ngx_readv_chain.c @ 328:fb4dfb2ac0fc

nginx-0.0.3-2004-04-28-10:14:50 import
author Igor Sysoev <igor@sysoev.ru>
date Wed, 28 Apr 2004 06:14:50 +0000
parents 4b1a3a4acc60
children 6bdf858bff8c
comparison
equal deleted inserted replaced
327:e0f3f238db09 328:fb4dfb2ac0fc
171 rev = c->read; 171 rev = c->read;
172 172
173 do { 173 do {
174 n = readv(c->fd, (struct iovec *) io.elts, io.nelts); 174 n = readv(c->fd, (struct iovec *) io.elts, io.nelts);
175 175
176 if (n >= 0) { 176 if (n == 0) {
177 if (n < size) { 177 rev->ready = 0;
178 rev->eof = 1;
179
180 return n;
181
182 } else if (n > 0) {
183
184 if (n < size && !(ngx_event_flags & NGX_HAVE_GREEDY_EVENT)) {
178 rev->ready = 0; 185 rev->ready = 0;
179 }
180
181 if (n == 0) {
182 rev->eof = 1;
183 } 186 }
184 187
185 return n; 188 return n;
186 } 189 }
187 190