summaryrefslogtreecommitdiff
path: root/gnome-settings-daemon
diff options
context:
space:
mode:
authorRui Matos <tiagomatos@gmail.com>2014-05-26 17:32:28 +0200
committerRui Matos <tiagomatos@gmail.com>2014-05-26 17:44:12 +0200
commit36f32a30b606354c0917be006cc64db1b26e6b40 (patch)
tree5540a4b5d1349d013e36119e633265cbe2fc3cb2 /gnome-settings-daemon
parent41a023e58df6864e947849e558a4edb0c4057e20 (diff)
downloadgnome-settings-daemon-36f32a30b606354c0917be006cc64db1b26e6b40.tar.gz
daemon: Stop using deprecated GSettings API
Diffstat (limited to 'gnome-settings-daemon')
-rw-r--r--gnome-settings-daemon/gnome-settings-manager.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/gnome-settings-daemon/gnome-settings-manager.c b/gnome-settings-daemon/gnome-settings-manager.c
index acb1ca27..8658988f 100644
--- a/gnome-settings-daemon/gnome-settings-manager.c
+++ b/gnome-settings-daemon/gnome-settings-manager.c
@@ -182,8 +182,8 @@ on_plugin_deactivated (GnomeSettingsPluginInfo *info,
}
static gboolean
-contained (const char * const *items,
- const char *item)
+contained (char **items,
+ const char *item)
{
while (*items) {
if (g_strcmp0 (*items++, item) == 0) {
@@ -197,7 +197,18 @@ contained (const char * const *items,
static gboolean
is_schema (const char *schema)
{
- return contained (g_settings_list_schemas (), schema);
+ GSettingsSchemaSource *source = NULL;
+ gchar **non_relocatable = NULL;
+ gchar **relocatable = NULL;
+
+ source = g_settings_schema_source_get_default ();
+ if (!source)
+ return FALSE;
+
+ g_settings_schema_source_list_schemas (source, TRUE, &non_relocatable, &relocatable);
+
+ return (contained (non_relocatable, schema) ||
+ contained (relocatable, schema));
}
static gboolean
@@ -209,7 +220,7 @@ is_whitelisted (char **whitelist,
g_strcmp0 (whitelist[0], "all") == 0)
return TRUE;
- return contained ((const char * const *) whitelist, plugin_name);
+ return contained (whitelist, plugin_name);
}
static void