[virt-viewer] log: Handle G_MESSAGES_DEBUG with older glibs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commit 2bd835fb introduced a custom log handler to ensure
we never show debug messages by default regardless of glib
version (older glib were showing them by default).

However this custom log handler does not take into account
G_MESSAGES_DEBUG. This commit adds support for that and
makes the handling of --debug identical between older and newer glibs.
---
 src/virt-viewer-app.c  |  3 +--
 src/virt-viewer-util.c | 14 ++++++++++++--
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/src/virt-viewer-app.c b/src/virt-viewer-app.c
index 7dbb7fc..ad571c8 100644
--- a/src/virt-viewer-app.c
+++ b/src/virt-viewer-app.c
@@ -181,7 +181,6 @@ static guint signals[SIGNAL_LAST];
 void
 virt_viewer_app_set_debug(gboolean debug)
 {
-#if GLIB_CHECK_VERSION(2, 31, 0)
     if (debug) {
         const gchar *doms = g_getenv("G_MESSAGES_DEBUG");
         if (!doms) {
@@ -193,7 +192,7 @@ virt_viewer_app_set_debug(gboolean debug)
             g_free(newdoms);
         }
     }
-#endif
+
     doDebug = debug;
 }
 
diff --git a/src/virt-viewer-util.c b/src/virt-viewer-util.c
index 6fdaa07..6a20291 100644
--- a/src/virt-viewer-util.c
+++ b/src/virt-viewer-util.c
@@ -283,9 +283,19 @@ static void log_handler(const gchar *log_domain,
                         const gchar *message,
                         gpointer unused_data)
 {
-    if (glib_check_version(2, 32, 0) != NULL)
-        if (log_level >= G_LOG_LEVEL_DEBUG && !doDebug)
+#if !GLIB_CHECK_VERSION(2, 31, 0)
+    /* Older glibs were showing G_LOG_LEVEL_DEBUG messages by default */
+    if ((log_level == G_LOG_LEVEL_INFO)
+        || (log_level == G_LOG_LEVEL_DEBUG)) {
+        const char *domains = g_getenv ("G_MESSAGES_DEBUG");
+
+	if (domains == NULL)
+	    return;
+	if ((strcmp(domains, "all") != 0) &&
+	     (strstr(domains, G_LOG_DOMAIN) == NULL))
             return;
+    }
+#endif
 
     g_log_default_handler(log_domain, log_level, message, unused_data);
 }
-- 
1.9.3

_______________________________________________
virt-tools-list mailing list
virt-tools-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/virt-tools-list




[Index of Archives]     [Linux Virtualization]     [KVM Development]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Video 4 Linux]

  Powered by Linux