Commit b7774b18 authored by LRN's avatar LRN

Make gnulib vfprintf return the number of bytes actually written

To be honest, i don't remember what problems were caused by it returning the
number of bytes it *wanted* to write instead of the number of bytes
it actually wrote. Probably related to the fact that fwrite could
independently fail, and ignoring its return value ignores that error.
parent 82c2461e
......@@ -88,16 +88,16 @@ int _g_gnulib_vprintf (char const *format, va_list args)
int _g_gnulib_vfprintf (FILE *file, char const *format, va_list args)
char *result;
size_t length;
size_t length, rlength;
result = vasnprintf (NULL, &length, format, args);
if (result == NULL)
return -1;
fwrite (result, 1, length, file);
rlength = fwrite (result, 1, length, file);
free (result);
return length;
return rlength;
int _g_gnulib_vsprintf (char *string, char const *format, va_list args)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment