--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package phonon
Hi! I'm requesting a pre approval for fixing #771138, severity important.
We have been contacted today by one of the upstreams of Phonon making us
note a patch that avoids a crash when no backend is in use.
The patch is just two lines. I'm attaching the debdiff.
The only entry in the changelog is:
* Add do_not_assume_existing_backend.patch to solve a crash when running
without a backend (Closes: #771138).
Thanks in advance, Lisandro.
unblock phonon/4:4.8.0-4
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16-3-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -Nru phonon-4.8.0/debian/changelog phonon-4.8.0/debian/changelog
--- phonon-4.8.0/debian/changelog 2014-09-28 14:39:29.000000000 -0300
+++ phonon-4.8.0/debian/changelog 2014-11-27 00:06:46.000000000 -0300
@@ -1,3 +1,11 @@
+phonon (4:4.8.0-4) UNRELEASED; urgency=medium
+
+ [ Lisandro Damián Nicanor Pérez Meyer ]
+ * Add do_not_assume_existing_backend.patch to solve a crash when running
+ without a backend (Closes: #771138).
+
+ -- Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Thu, 27 Nov 2014 00:00:18 -0300
+
phonon (4:4.8.0-3) unstable; urgency=medium
* Remove debian/installgen, no longer used.
diff -Nru phonon-4.8.0/debian/patches/do_not_assume_existing_backend.patch phonon-4.8.0/debian/patches/do_not_assume_existing_backend.patch
--- phonon-4.8.0/debian/patches/do_not_assume_existing_backend.patch 1969-12-31 21:00:00.000000000 -0300
+++ phonon-4.8.0/debian/patches/do_not_assume_existing_backend.patch 2014-11-27 00:06:46.000000000 -0300
@@ -0,0 +1,40 @@
+commit ec5f8fc79338e15b69d24fd89b9fccf93049624f
+Author: Harald Sitter <sitter@kde.org>
+Date: Wed Nov 26 23:28:06 2014 +0100
+
+ do not assume we have a backend when setting an output device
+
+ random suggestion du jour: since debianesque distros are the only ones
+ allowing running without a backend (to my knowledge anyway), this fix
+ should be adopted there at the earliest convenient time.
+
+ this change prevents a crash when run without a backend and getting device
+ changes as the Iface handling later on would directly call the cast output
+ without checking its validity. since the cast would always be null when
+ there is no backend we can just as well save time and return early.
+
+ note: this is ultimately fallout from too excessive init() setup
+ when there is no backend, so the ideal fix would have been to abort the
+ setup there. given the limited testing exposure of alsa+phononserver+phonon
+ this less invasive fix is deemed more suitable for the existing code base
+ though.
+ (this lineup only happens with phononserver in the picture and that
+ bugger has already been killed off for plasma5)
+
+ BUG: 341296
+ CCMAIL: pkg-kde-talk@lists.alioth.debian.org
+
+diff --git a/phonon/audiooutput.cpp b/phonon/audiooutput.cpp
+index 0768768..f118824 100644
+--- a/phonon/audiooutput.cpp
++++ b/phonon/audiooutput.cpp
+@@ -54,6 +54,9 @@ static inline bool callSetOutputDevice(AudioOutputPrivate *const d, const AudioO
+ if (pulse->isActive())
+ return pulse->setOutputDevice(d->getStreamUuid(), dev.index());
+
++ if (!d->backendObject())
++ return false;
++
+ Iface<IFACES2> iface(d);
+ if (iface) {
+ return iface->setOutputDevice(dev);
diff -Nru phonon-4.8.0/debian/patches/series phonon-4.8.0/debian/patches/series
--- phonon-4.8.0/debian/patches/series 2014-08-19 02:31:06.000000000 -0300
+++ phonon-4.8.0/debian/patches/series 2014-11-27 00:06:46.000000000 -0300
@@ -1,3 +1,6 @@
+# Backported patches
+do_not_assume_existing_backend.patch
+
phonon-inc.patch
phonon_is_not_forced_in_KDE.diff
findqt4_optional_x11.diff
--- End Message ---