diff options
author | Wim Taymans <wtaymans@redhat.com> | 2018-12-12 15:47:01 +0100 |
---|---|---|
committer | Wim Taymans <wtaymans@redhat.com> | 2018-12-12 15:47:01 +0100 |
commit | 73aac68908c2c9f1dda2aab20bc4044fb0367782 (patch) | |
tree | ce6bb2f2a27cac36aeb3ce3201ea8583dee9eb68 /src | |
parent | 39078f2abcec18a8906e31b1caa969b15d2ddb74 (diff) |
flatpak: only update permissions on sandboxed clients
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/module-flatpak.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/modules/module-flatpak.c b/src/modules/module-flatpak.c index 189585d4..ab32a227 100644 --- a/src/modules/module-flatpak.c +++ b/src/modules/module-flatpak.c @@ -61,6 +61,7 @@ struct client_info { struct spa_list async_pending; bool checked; bool camera_allowed; + bool sandboxed; }; struct async_pending { @@ -434,6 +435,7 @@ core_global_added(void *data, struct pw_global *global) pw_log_debug("module %p: non sandboxed client %p", impl, client); return; } + cinfo->sandboxed = true; if (res < 0) { pw_log_warn("module %p: client %p sandbox check failed: %s", @@ -446,8 +448,10 @@ core_global_added(void *data, struct pw_global *global) do_portal_check(cinfo); } else { - spa_list_for_each(cinfo, &impl->client_list, link) - set_global_permissions(cinfo, global); + spa_list_for_each(cinfo, &impl->client_list, link) { + if (cinfo->sandboxed) + set_global_permissions(cinfo, global); + } } } |