gmessages: Add g_info macro for G_LOG_LEVEL_INFO
authorStef Walter <stefw@gnome.org>
Tue, 29 Oct 2013 20:30:06 +0000 (21:30 +0100)
committerStef Walter <stefw@gnome.org>
Tue, 19 Nov 2013 07:08:14 +0000 (08:08 +0100)
For completeness. Although less used than others, projects want
to use this, and end up having to define it awkwardly themselves.

https://bugzilla.gnome.org/show_bug.cgi?id=711103

docs/reference/glib/glib-sections.txt
glib/gmessages.c
glib/gmessages.h
glib/tests/protocol.c

index 9613a5f..c44219f 100644 (file)
@@ -1072,6 +1072,7 @@ g_message
 g_warning
 g_critical
 g_error
+g_info
 g_debug
 
 <SUBSECTION>
index 26018cd..2965d28 100644 (file)
  *     and g_return_val_if_fail().
  * @G_LOG_LEVEL_WARNING: log level for warnings, see g_warning()
  * @G_LOG_LEVEL_MESSAGE: log level for messages, see g_message()
- * @G_LOG_LEVEL_INFO: log level for informational messages
+ * @G_LOG_LEVEL_INFO: log level for informational messages, see g_info()
  * @G_LOG_LEVEL_DEBUG: log level for debug messages, see g_debug()
  * @G_LOG_LEVEL_MASK: a mask including all log levels
  *
  */
 
 /**
+ * g_info:
+ * @...: format string, followed by parameters to insert
+ *     into the format string (as with printf())
+ *
+ * A convenience function/macro to log an informational message. Seldom used.
+ *
+ * If g_log_default_handler() is used as the log handler function, a new-line
+ * character will automatically be appended to @..., and need not be entered
+ * manually.
+ *
+ * Such messages are suppressed by the g_log_default_handler() unless
+ * the G_MESSAGES_DEBUG environment variable is set appropriately.
+ *
+ * Since: 2.40
+ */
+
+/**
  * g_debug:
  * @...: format string, followed by parameters to insert
  *     into the format string (as with printf())
  * character will automatically be appended to @..., and need not be entered
  * manually.
  *
+ * Such messages are suppressed by the g_log_default_handler() unless
+ * the G_MESSAGES_DEBUG environment variable is set appropriately.
+ *
  * Since: 2.6
  */
 
index 811a695..d58fd8a 100644 (file)
@@ -164,6 +164,9 @@ void g_assert_warning         (const char *log_domain,
 #define g_warning(...)  g_log (G_LOG_DOMAIN,         \
                                G_LOG_LEVEL_WARNING,  \
                                __VA_ARGS__)
+#define g_info(...)     g_log (G_LOG_DOMAIN,         \
+                               G_LOG_LEVEL_INFO,     \
+                               __VA_ARGS__)
 #define g_debug(...)    g_log (G_LOG_DOMAIN,         \
                                G_LOG_LEVEL_DEBUG,    \
                                __VA_ARGS__)
@@ -184,6 +187,9 @@ void g_assert_warning         (const char *log_domain,
 #define g_warning(format...)    g_log (G_LOG_DOMAIN,         \
                                        G_LOG_LEVEL_WARNING,  \
                                        format)
+#define g_info(format...)       g_log (G_LOG_DOMAIN,         \
+                                       G_LOG_LEVEL_INFO,     \
+                                       format)
 #define g_debug(format...)      g_log (G_LOG_DOMAIN,         \
                                        G_LOG_LEVEL_DEBUG,    \
                                        format)
@@ -230,6 +236,15 @@ g_warning (const gchar *format,
   va_end (args);
 }
 static void
+g_info (const gchar *format,
+        ...)
+{
+  va_list args;
+  va_start (args, format);
+  g_logv (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, format, args);
+  va_end (args);
+}
+static void
 g_debug (const gchar *format,
          ...)
 {
index 28e29f9..cf5e9fd 100644 (file)
@@ -43,11 +43,8 @@ debug (void)
 static void
 info (void)
 {
-#ifdef g_info
-#error "rewrite this to use g_info()"
-#endif
   if (g_test_subprocess ())
-    g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "this is a regular g_log(..., G_LOG_LEVEL_INFO, ...) from the test suite");
+    g_info ("this is a regular g_info from the test suite");
 }
 
 static void