--- giflib/lib/gif_lib.h +++ giflib/lib/gif_lib.h @@ -231,7 +231,8 @@ extern int GifQuietPrint; #ifdef HAVE_STDARG_H - extern void GifQprintf(char *Format, ...); + extern void GifQprintf(char *Format, ...) + __attribute__ ((__format__ (__printf__, 1, 2))); #elif defined (HAVE_VARARGS_H) extern void GifQprintf(); #endif /* HAVE_STDARG_H */ --- giflib/lib/qprintf.c +++ giflib/lib/qprintf.c @@ -36,10 +36,15 @@ #ifdef HAVE_STDARG_H void GifQprintf(char *Format, ...) { - char Line[128]; va_list ArgPtr; + if (GifQuietPrint) + return; + va_start(ArgPtr, Format); + vfprintf(stderr, Format, ArgPtr); + va_end(ArgPtr); +} #else # ifdef HAVE_VARARGS_H void @@ -51,8 +56,6 @@ GifQprintf(va_alist) va_start(ArgPtr); Format = va_arg(ArgPtr, char *); -# endif /* HAVE_VARARGS_H */ -#endif /* HAVE_STDARG_H */ if (GifQuietPrint) return; @@ -61,3 +64,5 @@ GifQprintf(va_alist) fputs(Line, stderr); } +# endif /* HAVE_VARARGS_H */ +#endif /* HAVE_STDARG_H */