comparison src/os/unix/ngx_linux_sendfile_chain.c @ 10:46833bd150cb NGINX_0_1_5

nginx 0.1.5 *) Bugfix: on Solaris and Linux there may be too many "recvmsg() returned not enough data" alerts. *) Bugfix: there were the "writev() failed (22: Invalid argument)" errors on Solaris in proxy mode without sendfile. On other platforms that do not support sendfile at all the process got caught in an endless loop. *) Bugfix: segmentation fault on Solaris in proxy mode and using sendfile. *) Bugfix: segmentation fault on Solaris. *) Bugfix: on-line upgrade did not work on Linux. *) Bugfix: the ngx_http_autoindex_module module did not escape the spaces, the quotes, and the percent signs in the directory listing. *) Change: the decrease of the copy operations. *) Feature: the userid_p3p directive.
author Igor Sysoev <http://sysoev.ru>
date Thu, 11 Nov 2004 00:00:00 +0300
parents 4b2dafa26fe2
children 6f8b0dc0f8dd
comparison
equal deleted inserted replaced
9:77eee314ddbd 10:46833bd150cb
193 } 193 }
194 194
195 sent = rc > 0 ? rc : 0; 195 sent = rc > 0 ? rc : 0;
196 196
197 ngx_log_debug4(NGX_LOG_DEBUG_EVENT, c->log, 0, 197 ngx_log_debug4(NGX_LOG_DEBUG_EVENT, c->log, 0,
198 "sendfile: %d, @" OFF_T_FMT " %d:%d", 198 "sendfile: %d, @%O %z:%uz",
199 rc, file->file_pos, sent, fsize); 199 rc, file->file_pos, sent, fsize);
200 200
201 } else { 201 } else {
202 rc = writev(c->fd, header.elts, header.nelts); 202 rc = writev(c->fd, header.elts, header.nelts);
203 203
219 } 219 }
220 } 220 }
221 221
222 sent = rc > 0 ? rc : 0; 222 sent = rc > 0 ? rc : 0;
223 223
224 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, c->log, 0, "writev: %d", sent); 224 ngx_log_debug1(NGX_LOG_DEBUG_EVENT, c->log, 0, "writev: %z", sent);
225 } 225 }
226 226
227 if (send - sprev == sent) { 227 if (send - sprev == sent) {
228 complete = 1; 228 complete = 1;
229 } 229 }