]> git.refcnt.org Git - colorize.git/commitdiff
Add vfprintf_diag and macro
authorSteven Schubiger <stsc@refcnt.org>
Wed, 31 Jul 2013 16:25:48 +0000 (18:25 +0200)
committerSteven Schubiger <stsc@refcnt.org>
Wed, 31 Jul 2013 16:25:48 +0000 (18:25 +0200)
colorize.c

index da444e4085ec220e654a45a30bbfb3c92144d027..3b80c9e9ab5382a5c7164f8f31216d277f12991c 100644 (file)
@@ -196,6 +196,7 @@ static void *realloc_wrap_debug (void *, size_t, const char *, unsigned int);
 static void free_wrap (void **);
 static char *strdup_wrap (const char *);
 static char *str_concat (const char *, const char *);
+static void vfprintf_diag (const char *, ...);
 static void vfprintf_fail (const char *, ...);
 static void stack_var (void ***, unsigned int *, unsigned int, void *);
 static void release_var (void **, unsigned int, void **);
@@ -971,15 +972,24 @@ str_concat (const char *str1, const char *str2)
     return str;
 }
 
+#define DO_VFPRINTF(fmt)                    \
+    va_list ap;                             \
+    fprintf (stderr, "%s: ", program_name); \
+    va_start (ap, fmt);                     \
+    vfprintf (stderr, fmt, ap);             \
+    va_end (ap);                            \
+    fprintf (stderr, "\n");                 \
+
+static void
+vfprintf_diag (const char *fmt, ...)
+{
+    DO_VFPRINTF (fmt);
+}
+
 static void
 vfprintf_fail (const char *fmt, ...)
 {
-    va_list ap;
-    fprintf (stderr, "%s: ", program_name);
-    va_start (ap, fmt);
-    vfprintf (stderr, fmt, ap);
-    va_end (ap);
-    fprintf (stderr, "\n");
+    DO_VFPRINTF (fmt);
     exit (EXIT_FAILURE);
 }