diff options
| author | 2012-02-18 11:20:21 +0000 | |
|---|---|---|
| committer | 2012-02-18 11:20:21 +0000 | |
| commit | 5fae4203d5006620c06fc511154d915fa178bddc (patch) | |
| tree | 99af4f7ac830c3cd0f303afe87f92dd20f44e8b5 /usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c | |
| parent | Extend after recent msdos support. (diff) | |
| download | wireguard-openbsd-5fae4203d5006620c06fc511154d915fa178bddc.tar.xz wireguard-openbsd-5fae4203d5006620c06fc511154d915fa178bddc.zip | |
update to 1.0.12
Diffstat (limited to 'usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c')
| -rw-r--r-- | usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c b/usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c index 039243e96bd..610697d77fb 100644 --- a/usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c +++ b/usr.sbin/nginx/src/os/unix/ngx_freebsd_sendfile_chain.c @@ -1,6 +1,7 @@ /* * Copyright (C) Igor Sysoev + * Copyright (C) Nginx, Inc. */ @@ -246,9 +247,14 @@ ngx_freebsd_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in, off_t limit) } } - hdtr.headers = (struct iovec *) header.elts; + /* + * sendfile() does unneeded work if sf_hdtr's count is 0, + * but corresponding pointer is not NULL + */ + + hdtr.headers = header.nelts ? (struct iovec *) header.elts: NULL; hdtr.hdr_cnt = header.nelts; - hdtr.trailers = (struct iovec *) trailer.elts; + hdtr.trailers = trailer.nelts ? (struct iovec *) trailer.elts: NULL; hdtr.trl_cnt = trailer.nelts; /* |
