diff options
author | Bastien Nocera <hadess@hadess.net> | 2017-03-15 13:31:27 +0100 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2017-03-15 19:02:24 +0100 |
commit | e5c6735c6b9ed4fc6466d3ea1aac3838ffbb6695 (patch) | |
tree | 1dc448439abf774820a51a592f0375438d7894bb /plugins | |
parent | a62d5305c6eff75db3e81de59191550cac8c0842 (diff) | |
download | gnome-settings-daemon-e5c6735c6b9ed4fc6466d3ea1aac3838ffbb6695.tar.gz |
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
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/common/daemon-skeleton-gtk.h | 4 | ||||
-rw-r--r-- | 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 e3d42cd0..714e48b3 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 7c93ced3..dedfd61c 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)) { |