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.

https://bugzilla.gnome.org/show_bug.cgi?id=748064
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