diff --git a/debian/changelog b/debian/changelog index c6652d7b2..73cd3c496 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +pipewire (0.3.63-3.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Correctly manage pulse drain state, Closes: #1027762 + + -- Sam Hartman Tue, 10 Jan 2023 09:38:01 -0700 + pipewire (0.3.63-3) experimental; urgency=medium * Patch doc/Doxyfile.in to make the build reproducible. diff --git a/debian/patches/624e265fd6e5027e11027822eb943c533feab85f.patch b/debian/patches/624e265fd6e5027e11027822eb943c533feab85f.patch new file mode 100644 index 000000000..ee8cd8562 --- /dev/null +++ b/debian/patches/624e265fd6e5027e11027822eb943c533feab85f.patch @@ -0,0 +1,32 @@ +From: Wim Taymans +Date: Tue, 10 Jan 2023 12:49:22 +0100 +Subject: pulse-server: clear the drained state correctly + +When we start the drain, we unpause the stream. When we conplete the +drain, we unpause again, which does nothing when the stream was already +unpaused. However, this leaves the drained state on the stream and so +the stream will never be able to play new data. + +Trigger a new pw_stream_set_active() with the current stream state to +clear the drained state. + +Fixes #2928 + +(cherry picked from commit 624e265fd6e5027e11027822eb943c533feab85f) +--- + src/modules/module-protocol-pulse/pulse-server.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/modules/module-protocol-pulse/pulse-server.c b/src/modules/module-protocol-pulse/pulse-server.c +index 97405e0..97d247d 100644 +--- a/src/modules/module-protocol-pulse/pulse-server.c ++++ b/src/modules/module-protocol-pulse/pulse-server.c +@@ -1541,7 +1541,7 @@ static void stream_drained(void *data) + reply_simple_ack(stream->client, stream->drain_tag); + stream->drain_tag = 0; + +- stream_set_paused(stream, false, "complete drain"); ++ pw_stream_set_active(stream->stream, !stream->is_paused); + } + } + diff --git a/debian/patches/series b/debian/patches/series index fdb12d606..5e306c59b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -4,3 +4,4 @@ Fix_services.patch Reproducible_doxygen.patch # Recommended patch for 0.3.63 c7b3ef0d9ff16a1e69a299870860bebcb628e298.patch +624e265fd6e5027e11027822eb943c533feab85f.patch