[arch-commits] Commit in kdemultimedia/kde-unstable (2 files)
Andrea Scarpino
andrea at archlinux.org
Tue Jul 12 19:24:04 UTC 2011
Date: Tuesday, July 12, 2011 @ 15:24:04
Author: andrea
Revision: 131351
Fix memleak in KMix BUG#264089
Added:
kdemultimedia/kde-unstable/fix-memleak-in-kmix.patch
Modified:
kdemultimedia/kde-unstable/PKGBUILD
---------------------------+
PKGBUILD | 9 +++++--
fix-memleak-in-kmix.patch | 55 ++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 62 insertions(+), 2 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2011-07-12 19:23:57 UTC (rev 131350)
+++ PKGBUILD 2011-07-12 19:24:04 UTC (rev 131351)
@@ -19,11 +19,16 @@
makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdelibs' 'tunepimp'
'ffmpeg' 'mplayer' 'pulseaudio' 'libmusicbrainz3')
source=("http://download.kde.org/unstable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2"
- 'mplayerthumbs.config')
+ 'mplayerthumbs.config'
+ 'fix-memleak-in-kmix.patch')
sha1sums=('81c9755c5f1bf41b4af0452ba9522f23096f47a9'
- 'ba016fa2563c14ffcba852c62506b66bfc6ee683')
+ 'ba016fa2563c14ffcba852c62506b66bfc6ee683'
+ '80370de30898f1ba1a6db057d34324abdcc57384')
build() {
+ cd "${srcdir}"/${pkgbase}-${pkgver}
+ patch -p1 -i "${srcdir}"/fix-memleak-in-kmix.patch
+
cd ${srcdir}
mkdir build
cd build
Added: fix-memleak-in-kmix.patch
===================================================================
--- fix-memleak-in-kmix.patch (rev 0)
+++ fix-memleak-in-kmix.patch 2011-07-12 19:24:04 UTC (rev 131351)
@@ -0,0 +1,55 @@
+Index: kdemultimedia/kmix/backends/mixer_pulse.cpp
+===================================================================
+--- kdemultimedia/kmix/backends/mixer_pulse.cpp (revision 1241345)
++++ kdemultimedia/kmix/backends/mixer_pulse.cpp (revision 1241346)
+@@ -754,7 +754,12 @@
+ return;
+ }
+ addDevice((*map)[index]);
+- emit controlsReconfigured(_mixer->id());
++ // Do not emit directly to ensure all connected slots are executed
++ // in their own event loop.
++ QMetaObject::invokeMethod(this,
++ "controlsReconfigured",
++ Qt::QueuedConnection,
++ Q_ARG(QString, _mixer->id()));
+ }
+
+ void Mixer_PULSE::removeWidget(int index)
+@@ -778,7 +783,12 @@
+ {
+ delete *iter;
+ m_mixDevices.erase(iter);
+- emit controlsReconfigured(_mixer->id());
++ // Do not emit directly to ensure all connected slots are executed
++ // in their own event loop.
++ QMetaObject::invokeMethod(this,
++ "controlsReconfigured",
++ Qt::QueuedConnection,
++ Q_ARG(QString, _mixer->id()));
+ return;
+ }
+ }
+@@ -799,7 +809,12 @@
+ delete *iter;
+ m_mixDevices.erase(iter);
+ }
+- emit controlsReconfigured(_mixer->id());
++ // Do not emit directly to ensure all connected slots are executed
++ // in their own event loop.
++ QMetaObject::invokeMethod(this,
++ "controlsReconfigured",
++ Qt::QueuedConnection,
++ Q_ARG(QString, _mixer->id()));
+ }
+
+ void Mixer_PULSE::addDevice(devinfo& dev)
+@@ -990,7 +1005,7 @@
+ kDebug(67100) << "Using PulseAudio for mixer: " << m_mixerName;
+ m_isOpen = true;
+ }
+-
++
+ return 0;
+ }
+
More information about the arch-commits
mailing list