diff options
author | Ryan Lortie <desrt@desrt.ca> | 2012-07-29 11:41:09 +0200 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2012-07-29 11:41:09 +0200 |
commit | ea782409eab6305806b8f35b4cfbb76927bcead9 (patch) | |
tree | 9120e5d9d1b81d38aea285554479da755ce83e3e /engine/dconf-engine.c | |
parent | 1a580f4465d80bad209d7dccdad92063aa2861fa (diff) | |
download | dconf-ea782409eab6305806b8f35b4cfbb76927bcead9.tar.gz |
gsettings/: adjust to GSettingsBackend API changeswip/settings-backend
Diffstat (limited to 'engine/dconf-engine.c')
-rw-r--r-- | engine/dconf-engine.c | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/engine/dconf-engine.c b/engine/dconf-engine.c index 89a0c67..71c3038 100644 --- a/engine/dconf-engine.c +++ b/engine/dconf-engine.c @@ -295,7 +295,7 @@ dconf_engine_unref (DConfEngine *engine) goto again; } -static DConfEngine * +DConfEngine * dconf_engine_ref (DConfEngine *engine) { g_atomic_int_inc (&engine->ref_count); @@ -360,6 +360,24 @@ dconf_engine_is_writable (DConfEngine *engine, return writable; } +gboolean +dconf_engine_is_set (DConfEngine *engine, + const gchar *key) +{ + gboolean set; + + dconf_engine_acquire_sources (engine); + + set = engine->n_sources > 0 && + engine->sources[0]->writable && + engine->sources[0]->values && + gvdb_table_has_value (engine->sources[0]->values, key); + + dconf_engine_release_sources (engine); + + return set; +} + static gboolean dconf_engine_find_key_in_queue (GQueue *queue, const gchar *key, @@ -377,7 +395,7 @@ dconf_engine_find_key_in_queue (GQueue *queue, GVariant * dconf_engine_read (DConfEngine *engine, - DConfChangesetList *read_through, + GQueue *read_through, const gchar *key) { GVariant *value = NULL; @@ -500,7 +518,7 @@ dconf_engine_read (DConfEngine *engine, /* Step 2. Check read_through. */ if (read_through) - found_key = dconf_engine_find_key_in_queue (&read_through->queue, key, &value); + found_key = dconf_engine_find_key_in_queue (read_through, key, &value); /* Step 3. Check queued changes if we didn't find it in read_through. * |