comparison src/event/ngx_event_write.c @ 9:6f58641241bb

nginx-0.0.1-2002-09-07-14:14:25 import
author Igor Sysoev <igor@sysoev.ru>
date Sat, 07 Sep 2002 10:14:25 +0000
parents 708f8bb772ec
children 53cb81681040
comparison
equal deleted inserted replaced
8:708f8bb772ec 9:6f58641241bb
96 file->file->fd, file->pos.file, 96 file->file->fd, file->pos.file,
97 (size_t) (file->last.file - file->pos.file), 97 (size_t) (file->last.file - file->pos.file),
98 (ngx_iovec_t *) trailer->elts, trailer->nelts, 98 (ngx_iovec_t *) trailer->elts, trailer->nelts,
99 &sent, c->log); 99 &sent, c->log);
100 } else { 100 } else {
101 size_t sendv_sent; 101 rc = ngx_sendv(c, (ngx_iovec_t *) header->elts,
102 header->nelts);
102 103
103 sendv_sent = 0; 104 sent = rc > 0 ? rc: 0;
104 rc = ngx_sendv(c->fd, (ngx_iovec_t *) header->elts, 105
105 header->nelts, &sendv_sent);
106 sent = sendv_sent;
107 ngx_log_debug(c->log, "sendv: " QD_FMT _ sent); 106 ngx_log_debug(c->log, "sendv: " QD_FMT _ sent);
108 } 107 }
109 #if (HAVE_MAX_SENDFILE_IOVEC) 108 #if (HAVE_MAX_SENDFILE_IOVEC)
110 } 109 }
111 #endif 110 #endif
112 /* save sent for logging */ 111 if (rc == NGX_ERROR)
112 return (ngx_chain_t *) NGX_ERROR;
113 113
114 if (rc == NGX_ERROR) 114 c->sent += sent;
115 return (ngx_chain_t *) -1;
116
117 c->sent = sent;
118 flush -= sent; 115 flush -= sent;
119 116
120 for (ch = in; ch; ch = ch->next) { 117 for (ch = in; ch; ch = ch->next) {
121 118
122 ngx_log_debug(c->log, "ch event write: %x %qx %qd" _ 119 ngx_log_debug(c->log, "ch event write: %x %qx %qd" _