[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#982669: marked as done (buster-pu: package portaudio19/19.6.0-1)



Your message dated Sat, 27 Mar 2021 10:26:45 +0000
with message-id <702e3cb8159c9986264e966af79023672688a8a4.camel@adam-barratt.org.uk>
and subject line Closing p-u requests for fixes included in 10.9 point release
has caused the Debian Bug report #982669,
regarding buster-pu: package portaudio19/19.6.0-1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
982669: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=982669
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: buster
User: release.debian.org@packages.debian.org
Usertags: pu
X-Debbugs-Cc: tg@mirbsd.de

I would like to upload the contents of portaudio19 19.6.0-1.1
to buster.

[ Reason ]
The current library makes applications crash. Please see
Debian #944509 for the bugreport, but this is also seen
e.g. when testing a polyphone backport which I’ve just
built. Without the crash fix backporting polyphone makes
no sense, and since it is a rather important fix entering
via stable-updates seems sensible (instead of via bpo).

[ Impact ]
Applications using portaudio randomly crash.

[ Tests ]
No automated tests but without it applied, polyphone
crashes after a bit, maybe a minute or two, of using.

[ Risks ]
The patch is rather small and “obvious enough”, so I
consider this zero risk. It has been tested in unstable
and testing for 7 months now.

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]
Apply a patch from the upstream mailing list to fix the crash.

[ Other info ]
The resulting package is, except for the changelog difference
and being recompiled in buster, identical to the one in
bullseye/sid.
diff -Nru portaudio19-19.6.0/debian/changelog portaudio19-19.6.0/debian/changelog
--- portaudio19-19.6.0/debian/changelog	2016-12-25 22:08:34.000000000 +0100
+++ portaudio19-19.6.0/debian/changelog	2021-02-13 07:42:27.000000000 +0100
@@ -1,3 +1,9 @@
+portaudio19 (19.6.0-1+deb10u1) buster; urgency=medium
+
+  * Apply crash fix patch (Closes: #944509)
+
+ -- Thorsten Glaser <tg@mirbsd.de>  Sat, 13 Feb 2021 07:42:27 +0100
+
 portaudio19 (19.6.0-1) unstable; urgency=medium
 
   * New upstream release v190600_20161030
diff -Nru portaudio19-19.6.0/debian/patches/944509-crash.patch portaudio19-19.6.0/debian/patches/944509-crash.patch
--- portaudio19-19.6.0/debian/patches/944509-crash.patch	1970-01-01 01:00:00.000000000 +0100
+++ portaudio19-19.6.0/debian/patches/944509-crash.patch	2020-07-30 16:26:55.000000000 +0200
@@ -0,0 +1,59 @@
+Description: handle EPIPE from alsa_snd_pcm_poll_descriptors
+ was: pa_linux_alsa.c:3636 Assertion failed
+Origin: https://lists.columbia.edu/pipermail/portaudio/2019-July/001888.html
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944509
+Forwarded: not-needed
+Justification: taken from upstream dev mailing list post
+Author: Sam Mason <assumetrue@gmail.com>
+Reviewed-by: Norbert Preining <norbert@preining.info>
+Applied-Upstream: no
+
+--- a/src/hostapi/alsa/pa_linux_alsa.c
++++ b/src/hostapi/alsa/pa_linux_alsa.c
+@@ -3633,12 +3633,18 @@ error:
+ 
+ /** Fill in pollfd objects.
+  */
+-static PaError PaAlsaStreamComponent_BeginPolling( PaAlsaStreamComponent* self, struct pollfd* pfds )
++static PaError PaAlsaStreamComponent_BeginPolling( PaAlsaStreamComponent* self, struct pollfd* pfds, int *xrunOccurred )
+ {
+     PaError result = paNoError;
+     int ret = alsa_snd_pcm_poll_descriptors( self->pcm, pfds, self->nfds );
+-    (void)ret;  /* Prevent unused variable warning if asserts are turned off */
+-    assert( ret == self->nfds );
++    if( -EPIPE == ret )
++    {
++      *xrunOccurred = 1;
++    }
++    else
++    {
++      assert( ret == self->nfds );
++    }
+ 
+     self->ready = 0;
+ 
+@@ -3799,17 +3805,22 @@ static PaError PaAlsaStream_WaitForFrame
+         if( pollCapture )
+         {
+             capturePfds = self->pfds;
+-            PA_ENSURE( PaAlsaStreamComponent_BeginPolling( &self->capture, capturePfds ) );
++            PA_ENSURE( PaAlsaStreamComponent_BeginPolling( &self->capture, capturePfds, &xrun ) );
+             totalFds += self->capture.nfds;
+         }
+         if( pollPlayback )
+         {
+             /* self->pfds is in effect an array of fds; if necessary, index past the capture fds */
+             playbackPfds = self->pfds + (pollCapture ? self->capture.nfds : 0);
+-            PA_ENSURE( PaAlsaStreamComponent_BeginPolling( &self->playback, playbackPfds ) );
++            PA_ENSURE( PaAlsaStreamComponent_BeginPolling( &self->playback, playbackPfds, &xrun ) );
+             totalFds += self->playback.nfds;
+         }
+ 
++        if ( xrun )
++        {
++          break;
++        }
++
+ #ifdef PTHREAD_CANCELED
+         if( self->callbackMode )
+         {
diff -Nru portaudio19-19.6.0/debian/patches/series portaudio19-19.6.0/debian/patches/series
--- portaudio19-19.6.0/debian/patches/series	2016-12-25 21:37:53.000000000 +0100
+++ portaudio19-19.6.0/debian/patches/series	2021-02-13 07:42:08.000000000 +0100
@@ -1 +1,2 @@
 audacity-portmixer.patch
+944509-crash.patch

--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 10.9

Hi,

Each of the updates referenced in these bugs was included in the 10.9
point release today.

Regards,

Adam

--- End Message ---

Reply to: