X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=fd.c;h=20dc07da16e49bcfc13df2a649f0c616755f889b;hb=985ba0546ab18eadf73d0a2686029a3ac876c846;hp=3a8406d9c9fd1454a0807c8584bae78aa1b2f543;hpb=26a0b7e457d1dd7e0e40d866d28de00c5d1cfa54;p=paraslash.git diff --git a/fd.c b/fd.c index 3a8406d9..20dc07da 100644 --- a/fd.c +++ b/fd.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2012 Andre Noll + * Copyright (C) 2006-2013 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -146,6 +146,7 @@ __printf_2_3 int write_va_buffer(int fd, const char *fmt, ...) va_start(ap, fmt); ret = xvasprintf(&msg, fmt, ap); + va_end(ap); ret = write_all(fd, msg, ret); free(msg); return ret; @@ -162,9 +163,9 @@ __printf_2_3 int write_va_buffer(int fd, const char *fmt, ...) * * If \a rfds is not \p NULL and the (non-blocking) file descriptor \a fd is * not set in \a rfds, this function returns early without doing anything. - * Otherwise The function tries to read up to \a sz bytes from \a fd. As for - * xwrite(), EAGAIN is not considered an error condition. However, EOF - * is. + * Otherwise The function tries to read up to \a sz bytes from \a fd, where \a + * sz is the sum of the lengths of all vectors in \a iov. As for xwrite(), + * \p EAGAIN is not considered an error condition. However, \p EOF is. * * \return Zero or a negative error code. If the underlying call to readv(2) * returned zero (indicating an end of file condition) or failed for some