[gnome-settings-daemon] plugins: Work-around startup deadlock



commit e5c6735c6b9ed4fc6466d3ea1aac3838ffbb6695
Author: Bastien Nocera <hadess hadess net>
Date:   Wed Mar 15 13:31:27 2017 +0100

    plugins: Work-around startup deadlock
    
    A number of the plugins/daemons fail to startup because of a deadlock in
    initialising GDBus-related GObject types.
    
    See https://bugzilla.gnome.org/show_bug.cgi?id=674885
    
    https://bugzilla.gnome.org/show_bug.cgi?id=774813

 plugins/common/daemon-skeleton-gtk.h |    4 ++++
 plugins/common/daemon-skeleton.h     |    4 ++++
 2 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/plugins/common/daemon-skeleton-gtk.h b/plugins/common/daemon-skeleton-gtk.h
index e3d42cd..714e48b 100644
--- a/plugins/common/daemon-skeleton-gtk.h
+++ b/plugins/common/daemon-skeleton-gtk.h
@@ -172,6 +172,10 @@ main (int argc, char **argv)
         bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
         textdomain (GETTEXT_PACKAGE);
 
+        /* Work around https://bugzilla.gnome.org/show_bug.cgi?id=674885 */
+        g_type_ensure (G_TYPE_DBUS_CONNECTION);
+        g_type_ensure (G_TYPE_DBUS_PROXY);
+
         gdk_set_allowed_backends ("x11");
 
         error = NULL;
diff --git a/plugins/common/daemon-skeleton.h b/plugins/common/daemon-skeleton.h
index 7c93ced..dedfd61 100644
--- a/plugins/common/daemon-skeleton.h
+++ b/plugins/common/daemon-skeleton.h
@@ -174,6 +174,10 @@ main (int argc, char **argv)
         bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
         textdomain (GETTEXT_PACKAGE);
 
+        /* Work around https://bugzilla.gnome.org/show_bug.cgi?id=674885 */
+        g_type_ensure (G_TYPE_DBUS_CONNECTION);
+        g_type_ensure (G_TYPE_DBUS_PROXY);
+
         context = g_option_context_new (NULL);
         g_option_context_add_main_entries (context, entries, GETTEXT_PACKAGE);
         if (!g_option_context_parse (context, &argc, &argv, &error)) {


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