Arun Raghavan pushed to branch master at PulseAudio / pulseaudio
Commits: 7fb85e0a by Tanu Kaskinen at 2019-06-10T11:21:59Z 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 - - - - - 2 changed files: - src/pulsecore/sink.c - src/pulsecore/source.c Changes: ===================================== src/pulsecore/sink.c ===================================== @@ -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; ===================================== src/pulsecore/source.c ===================================== @@ -708,7 +708,11 @@ void pa_source_unlink(pa_source *s) { } if (linked) - source_set_state(s, PA_SOURCE_UNLINKED, 0); + /* It's important to keep the suspend cause unchanged when unlinking, + * because if we remove the SESSION suspend cause here, the alsa + * source will sync its volume with the hardware while another user is + * active, messing up the volume for that other user. */ + source_set_state(s, PA_SOURCE_UNLINKED, s->suspend_cause); else s->state = PA_SOURCE_UNLINKED; View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/7fb85e0a5bfdec339fda9f7584f65cf9ddbd50a1 -- View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/7fb85e0a5bfdec339fda9f7584f65cf9ddbd50a1 You're receiving this email because of your account on gitlab.freedesktop.org.
_______________________________________________ pulseaudio-commits mailing list pulseaudio-commits@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/pulseaudio-commits