When g_settings_apply() is called on a delayed settings backend and
there is a D-Bus error when communicating with dconf-service, recent
versions of the dconf GSettingsBackend call a function in GLib that
improperly delivered the signal directly instead of using
g_main_context_invoke().
This patch fixes this function to route in the same way as the others so
that the signal is dispatched in the proper GMainContext.
GTree *tree,
gpointer origin_tag)
{
- GSettingsBackendWatch *watch;
const gchar **keys;
gchar *path;
}
#endif
- for (watch = backend->priv->watches; watch; watch = watch->next)
- watch->vtable->keys_changed (watch->target, backend,
- path, keys, origin_tag);
-
+ g_settings_backend_keys_changed (backend, path, keys, origin_tag);
g_free (path);
g_free (keys);
}