diff options
Diffstat (limited to 'src/os/unix/ngx_darwin_sendfile_chain.c')
-rw-r--r-- | src/os/unix/ngx_darwin_sendfile_chain.c | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/os/unix/ngx_darwin_sendfile_chain.c b/src/os/unix/ngx_darwin_sendfile_chain.c index a85269dcd..3caad0790 100644 --- a/src/os/unix/ngx_darwin_sendfile_chain.c +++ b/src/os/unix/ngx_darwin_sendfile_chain.c @@ -75,8 +75,6 @@ ngx_darwin_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, off_t limit) trailer.nalloc = NGX_IOVS_PREALLOCATE; for ( ;; ) { - file = NULL; - file_size = 0; eintr = 0; prev_send = send; @@ -98,22 +96,21 @@ ngx_darwin_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, off_t limit) file_size = ngx_chain_coalesce_file(&cl, limit - send); send += file_size; - } - - if (file && header.count == 0) { - /* create the trailer iovec and coalesce the neighbouring bufs */ + if (header.count == 0) { - cl = ngx_output_chain_to_iovec(&trailer, cl, limit - send, c->log); + /* + * create the trailer iovec and coalesce the neighbouring bufs + */ - if (cl == NGX_CHAIN_ERROR) { - return NGX_CHAIN_ERROR; - } + cl = ngx_output_chain_to_iovec(&trailer, cl, limit - send, c->log); - send += trailer.size; - } + if (cl == NGX_CHAIN_ERROR) { + return NGX_CHAIN_ERROR; + } - if (file) { + send += trailer.size; + } /* * sendfile() returns EINVAL if sf_hdtr's count is 0, |