sink, source: Don't change suspend cause when unlinking

See the added comments for why this is necessary.

Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/667
This commit is contained in:
Tanu Kaskinen 2019-06-10 14:18:47 +03:00
parent 6b1719d0ed
commit 7fb85e0a5b
2 changed files with 10 additions and 2 deletions

View file

@ -767,7 +767,11 @@ void pa_sink_unlink(pa_sink* s) {
}
if (linked)
sink_set_state(s, PA_SINK_UNLINKED, 0);
/* It's important to keep the suspend cause unchanged when unlinking,
* because if we remove the SESSION suspend cause here, the alsa sink
* will sync its volume with the hardware while another user is
* active, messing up the volume for that other user. */
sink_set_state(s, PA_SINK_UNLINKED, s->suspend_cause);
else
s->state = PA_SINK_UNLINKED;