[kdemultimedia] more kmix_pulse_memleak work (kde#264089)
Rex Dieter
rdieter at fedoraproject.org
Tue Jul 12 20:45:17 UTC 2011
commit e4802315c8cf42d6bfe59dc3eef449cdba9b72ba
Author: Rex Dieter <rdieter at fedoraproject.org>
Date: Tue Jul 12 15:50:25 2011 -0500
more kmix_pulse_memleak work (kde#264089)
kdemultimedia-4.6.95-kmix_pulse_memleak.patch | 53 +++++++++++++++++++++++++
kdemultimedia.spec | 9 ++++-
2 files changed, 61 insertions(+), 1 deletions(-)
---
diff --git a/kdemultimedia-4.6.95-kmix_pulse_memleak.patch b/kdemultimedia-4.6.95-kmix_pulse_memleak.patch
new file mode 100644
index 0000000..00335ac
--- /dev/null
+++ b/kdemultimedia-4.6.95-kmix_pulse_memleak.patch
@@ -0,0 +1,53 @@
+--- trunk/KDE/kdemultimedia/kmix/backends/mixer_pulse.cpp 2011/07/12 18:58:53 1241345
++++ trunk/KDE/kdemultimedia/kmix/backends/mixer_pulse.cpp 2011/07/12 19:01:32 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;
+ }
+
diff --git a/kdemultimedia.spec b/kdemultimedia.spec
index e88026e..3f842d4 100644
--- a/kdemultimedia.spec
+++ b/kdemultimedia.spec
@@ -11,7 +11,7 @@
Name: kdemultimedia
Epoch: 6
Version: 4.6.95
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: KDE Multimedia applications
Group: Applications/Multimedia
@@ -24,6 +24,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Patch1: kdemultimedia-4.6.2-no_thumbs.patch
## upstream patches
+# http://websvn.kde.org/?revision=1241346&view=revision
+Patch100: kdemultimedia-4.6.95-kmix_pulse_memleak.patch
BuildRequires: alsa-lib-devel
BuildRequires: cdparanoia-devel cdparanoia
@@ -163,6 +165,8 @@ Requires: %{name}-kio_audiocd = %{?epoch:%{epoch}:}%{version}-%{release}
%prep
%setup -q -n kdemultimedia-%{version}%{?alphatag}
+%patch100 -p3 -b .kmix_pulse_memleak
+
# no mplayerthumbs/ffmpegthumbs
%patch1 -p1 -b .no_thumbs
@@ -388,6 +392,9 @@ fi
%changelog
+* Tue Jul 12 2011 Rex Dieter <rdieter at fedoraproject.org> 6:4.6.95-2
+- more kmix_pulse_memleak work (kde#264089)
+
* Mon Jul 11 2011 Jaroslav Reznik <jreznik at redhat.com> - 6:4.6.95-1
- 4.6.95 (rc2)
More information about the scm-commits
mailing list