Another problem pointed out by clang
authorMikael Magnusson <mikachu@gmail.com>
Mon, 10 Nov 2008 22:25:23 +0000 (23:25 +0100)
committerMikael Magnusson <mikachu@gmail.com>
Sat, 15 Nov 2008 21:53:05 +0000 (22:53 +0100)
Using format specifiers without arguments in printf is still bad.

openbox/debug.c:105:18: warning: format string is not a string literal (potentially insecure)
    fprintf(out, log_domain);
                 ^~~~~~~~~~
openbox/debug.c:107:18: warning: format string is not a string literal (potentially insecure)
    fprintf(out, level);
                 ^~~~~
openbox/debug.c:109:18: warning: format string is not a string literal (potentially insecure)
    fprintf(out, message);
                 ^~~~~~~

openbox/debug.c

index 6b92c9e..db18784 100644 (file)
@@ -102,11 +102,11 @@ void ob_debug_enable(ObDebugType type, gboolean enable)
 static inline void log_print(FILE *out, const gchar* log_domain,
                              const gchar *level, const gchar *message)
 {
 static inline void log_print(FILE *out, const gchar* log_domain,
                              const gchar *level, const gchar *message)
 {
-    fprintf(out, log_domain);
+    fprintf(out, "%s", log_domain);
     fprintf(out, "-");
     fprintf(out, "-");
-    fprintf(out, level);
+    fprintf(out, "%s", level);
     fprintf(out, ": ");
     fprintf(out, ": ");
-    fprintf(out, message);
+    fprintf(out, "%s", message);
     fprintf(out, "\n");
     fflush(out);
 }
     fprintf(out, "\n");
     fflush(out);
 }