diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-02-01 20:54:08 -0500 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2019-02-21 01:09:58 +0000 |
commit | 9e25dfabcd45dfd9d083887a52627c906bc81451 (patch) | |
tree | b14409e5bef7d4628bfe11c5a155a1ebf3f17f17 /common | |
parent | 28e96288c487faa23845aa19c0b34dfce45dd6a7 (diff) | |
download | flatpak-9e25dfabcd45dfd9d083887a52627c906bc81451.tar.gz |
dconf: Prepare for reading user values
Pass the DCONF_READ flags down, so we can use a different one.
Closes: #2678
Approved by: alexlarsson
Diffstat (limited to 'common')
-rw-r--r-- | common/flatpak-run.c | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/common/flatpak-run.c b/common/flatpak-run.c index 0a9efbdd..17f0b672 100644 --- a/common/flatpak-run.c +++ b/common/flatpak-run.c @@ -1749,13 +1749,14 @@ flatpak_run_allocate_id (int *lock_fd_out) #ifdef HAVE_DCONF static void -add_dconf_key_to_keyfile (GKeyFile *keyfile, - DConfClient *client, - const char *key) +add_dconf_key_to_keyfile (GKeyFile *keyfile, + DConfClient *client, + const char *key, + DConfReadFlags flags) { g_autofree char *group = g_path_get_dirname (key); g_autofree char *k = g_path_get_basename (key); - GVariant *value = dconf_client_read_full (client, key, DCONF_READ_DEFAULT_VALUE, NULL); + GVariant *value = dconf_client_read_full (client, key, flags, NULL); if (value) { @@ -1765,9 +1766,10 @@ add_dconf_key_to_keyfile (GKeyFile *keyfile, } static void -add_dconf_dir_to_keyfile (GKeyFile *keyfile, - DConfClient *client, - const char *dir) +add_dconf_dir_to_keyfile (GKeyFile *keyfile, + DConfClient *client, + const char *dir, + DConfReadFlags flags) { g_auto(GStrv) keys = NULL; int i; @@ -1777,9 +1779,9 @@ add_dconf_dir_to_keyfile (GKeyFile *keyfile, { g_autofree char *k = g_strconcat (dir, keys[i], NULL); if (dconf_is_dir (k, NULL)) - add_dconf_dir_to_keyfile (keyfile, client, k); + add_dconf_dir_to_keyfile (keyfile, client, k, flags); else if (dconf_is_key (k, NULL)) - add_dconf_key_to_keyfile (keyfile, client, k); + add_dconf_key_to_keyfile (keyfile, client, k, flags); } } @@ -1847,7 +1849,7 @@ get_dconf_data (const char *app_id, client = dconf_client_new (); g_debug ("Add defaults in dir %s", prefix); - add_dconf_dir_to_keyfile (defaults_data, client, prefix); + add_dconf_dir_to_keyfile (defaults_data, client, prefix, DCONF_READ_DEFAULT_VALUE); g_debug ("Add locks in dir %s", prefix); add_dconf_locks_to_list (locks_data, client, prefix); @@ -1860,7 +1862,7 @@ get_dconf_data (const char *app_id, if (dconf_is_dir (settings[i], NULL)) { g_debug ("Add defaults in dir %s", settings[i]); - add_dconf_dir_to_keyfile (defaults_data, client, settings[i]); + add_dconf_dir_to_keyfile (defaults_data, client, settings[i], DCONF_READ_DEFAULT_VALUE); g_debug ("Add locks in dir %s", settings[i]); add_dconf_locks_to_list (locks_data, client, settings[i]); @@ -1868,7 +1870,7 @@ get_dconf_data (const char *app_id, else if (dconf_is_key (settings[i], NULL)) { g_debug ("Add individual key %s", settings[i]); - add_dconf_key_to_keyfile (defaults_data, client, settings[i]); + add_dconf_key_to_keyfile (defaults_data, client, settings[i], DCONF_READ_DEFAULT_VALUE); } else { |