diff options
author | Monsta <[email protected]> | 2015-02-18 18:08:00 +0300 |
---|---|---|
committer | Stefano Karapetsas <[email protected]> | 2015-03-08 21:12:32 +0100 |
commit | d50d0f52aed0220a7e4992910ee0116f91cae855 (patch) | |
tree | 58a7757dc28f0ccc9e5d87c97454f0dfb2839ca9 | |
parent | 2d78fb01819008db7435c908f1f95988574c34fb (diff) | |
download | mate-settings-daemon-d50d0f52aed0220a7e4992910ee0116f91cae855.tar.bz2 mate-settings-daemon-d50d0f52aed0220a7e4992910ee0116f91cae855.tar.xz |
xsettings plugin: first connect to settings, then read them.
fixes the issue with GLib >= 2.43,
https://git.gnome.org/browse/glib/commit/?id=8ff5668a458344da22d30491e3ce726d861b3619
Closes https://github.com/mate-desktop/mate-settings-daemon/pull/95
Conflicts:
plugins/xsettings/msd-xsettings-manager.c
-rw-r--r-- | plugins/xsettings/msd-xsettings-manager.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/plugins/xsettings/msd-xsettings-manager.c b/plugins/xsettings/msd-xsettings-manager.c index 1bf7de4..a8ccbc9 100644 --- a/plugins/xsettings/msd-xsettings-manager.c +++ b/plugins/xsettings/msd-xsettings-manager.c @@ -683,6 +683,13 @@ mate_xsettings_manager_start (MateXSettingsManager *manager, g_hash_table_insert (manager->priv->gsettings, SOUND_SCHEMA, g_settings_new (SOUND_SCHEMA)); + list = g_hash_table_get_values (manager->priv->gsettings); + for (l = list; l != NULL; l = l->next) { + g_signal_connect_object (G_OBJECT (l->data), "changed", + G_CALLBACK (xsettings_callback), manager, 0); + } + g_list_free (list); + for (i = 0; i < G_N_ELEMENTS (translations); i++) { GVariant *val; GSettings *gsettings; @@ -701,13 +708,6 @@ mate_xsettings_manager_start (MateXSettingsManager *manager, g_variant_unref (val); } - list = g_hash_table_get_values (manager->priv->gsettings); - for (l = list; l != NULL; l = l->next) { - g_signal_connect_object (G_OBJECT (l->data), "changed", - G_CALLBACK (xsettings_callback), manager, 0); - } - g_list_free (list); - #ifdef HAVE_FONTCONFIG manager->priv->gsettings_font = g_settings_new (FONT_RENDER_SCHEMA); g_signal_connect (manager->priv->gsettings_font, "changed", G_CALLBACK (xft_callback), manager); |