2007-10-19 Jim Meyering <meyering@redhat.com>
+ * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
+
New module: xprintf
* modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
va_list args;
va_start (args, format);
int err = vprintf (format, args);
- if (err && (errno == EILSEQ || errno == EINVAL || errno == ENOMEM))
+ if (err < 0 && (errno == EILSEQ || errno == EINVAL || errno == ENOMEM))
error (exit_failure, errno, gettext ("write error"));
return err;
va_list args;
va_start (args, format);
int err = vfprintf (stream, format, args);
- if (err && (errno == EILSEQ || errno == EINVAL || errno == ENOMEM))
+ if (err < 0 && (errno == EILSEQ || errno == EINVAL || errno == ENOMEM))
error (exit_failure, errno, gettext ("write error"));
return err;