From 470a692211a31627095fd2db1924df961139388c Mon Sep 17 00:00:00 2001 From: Glenn Strauss Date: Mon, 29 Apr 2019 20:18:52 -0400 Subject: [core] http_chunk_append_file_fd() --- src/http_chunk.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/http_chunk.c') diff --git a/src/http_chunk.c b/src/http_chunk.c index e8717756..302e94b3 100644 --- a/src/http_chunk.c +++ b/src/http_chunk.c @@ -81,13 +81,16 @@ int http_chunk_append_file(server *srv, connection *con, buffer *fn) { struct stat st; const int fd = http_chunk_append_file_open_fstat(srv, con, fn, &st); if (fd < 0) return -1; + http_chunk_append_file_fd(srv, con, fn, fd, st.st_size); + return 0; +} - if (0 != st.st_size) { - http_chunk_append_file_fd_range(srv, con, fn, fd, 0, st.st_size); +void http_chunk_append_file_fd(server *srv, connection *con, buffer *fn, int fd, off_t sz) { + if (0 != sz) { + http_chunk_append_file_fd_range(srv, con, fn, fd, 0, sz); } else { close(fd); } - return 0; } static int http_chunk_append_to_tempfile(server *srv, connection *con, const char * mem, size_t len) { -- cgit v1.2.1