mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
client: call find_permission only once
This commit is contained in:
parent
2d3f30fb96
commit
07ff967285
1 changed files with 6 additions and 3 deletions
|
|
@ -470,15 +470,17 @@ int pw_client_update_permissions(struct pw_client *client,
|
||||||
uint32_t n_permissions, const struct pw_permission *permissions)
|
uint32_t n_permissions, const struct pw_permission *permissions)
|
||||||
{
|
{
|
||||||
struct pw_core *core = client->core;
|
struct pw_core *core = client->core;
|
||||||
|
struct pw_permission *def;
|
||||||
uint32_t i;
|
uint32_t i;
|
||||||
|
|
||||||
|
if ((def = find_permission(client, SPA_ID_INVALID)) == NULL)
|
||||||
|
return -EIO;
|
||||||
|
|
||||||
for (i = 0; i < n_permissions; i++) {
|
for (i = 0; i < n_permissions; i++) {
|
||||||
struct pw_permission *p, *def;
|
struct pw_permission *p;
|
||||||
uint32_t old_perm, new_perm;
|
uint32_t old_perm, new_perm;
|
||||||
struct pw_global *global;
|
struct pw_global *global;
|
||||||
|
|
||||||
def = find_permission(client, SPA_ID_INVALID);
|
|
||||||
|
|
||||||
if (permissions[i].id == SPA_ID_INVALID) {
|
if (permissions[i].id == SPA_ID_INVALID) {
|
||||||
old_perm = def->permissions;
|
old_perm = def->permissions;
|
||||||
new_perm = permissions[i].permissions;
|
new_perm = permissions[i].permissions;
|
||||||
|
|
@ -521,6 +523,7 @@ int pw_client_update_permissions(struct pw_client *client,
|
||||||
}
|
}
|
||||||
if (n_permissions > 0)
|
if (n_permissions > 0)
|
||||||
pw_client_set_busy(client, false);
|
pw_client_set_busy(client, false);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue