pulse-server: behave like PA when moving streams to default

Pulseaudio unsets the preferred sink/source when stream is moved to a
default target. Emulate this behavior by setting + unsetting
target.node, which informs policy-node to move it accordingly.
This commit is contained in:
Pauli Virtanen 2021-01-18 13:23:23 +02:00
parent d1a0121b7c
commit d46c58e958
2 changed files with 30 additions and 5 deletions

View file

@ -675,6 +675,7 @@ int pw_manager_set_metadata(struct pw_manager *manager,
struct object *s;
va_list args;
char buf[1024];
char *value;
if ((s = find_object(m, subject)) == NULL)
return -ENOENT;
@ -686,12 +687,18 @@ int pw_manager_set_metadata(struct pw_manager *manager,
if (!SPA_FLAG_IS_SET(metadata->permissions, PW_PERM_W|PW_PERM_X))
return -EACCES;
va_start(args, format);
vsnprintf(buf, sizeof(buf)-1, format, args);
va_end(args);
if (type != NULL) {
va_start(args, format);
vsnprintf(buf, sizeof(buf)-1, format, args);
va_end(args);
value = buf;
} else {
spa_assert(format == NULL);
value = NULL;
}
pw_metadata_set_property(metadata->proxy,
subject, key, type, buf);
subject, key, type, value);
return 0;
}