src/server/util/io.c

branch
webdav
changeset 383
a5698877d14a
parent 361
570026d3a685
child 406
e5d96f6b9306
equal deleted inserted replaced
382:9e2289c77b04 383:a5698877d14a
733 733
734 ssize_t net_printf(SYS_NETFD fd, char *format, ...) { 734 ssize_t net_printf(SYS_NETFD fd, char *format, ...) {
735 va_list arg; 735 va_list arg;
736 va_start(arg, format); 736 va_start(arg, format);
737 sstr_t buf = ucx_vasprintf(ucx_default_allocator(), format, arg); 737 sstr_t buf = ucx_vasprintf(ucx_default_allocator(), format, arg);
738 ssize_t r = net_write(fd, buf.ptr, buf.length); 738 ssize_t r = buf.length > 0 ? net_write(fd, buf.ptr, buf.length) : 0;
739 free(buf.ptr); 739 free(buf.ptr);
740 va_end(arg); 740 va_end(arg);
741 if(r < 0) { 741 if(r < 0) {
742 ((IOStream*)fd)->io_errno = errno; 742 ((IOStream*)fd)->io_errno = errno;
743 } 743 }

mercurial