[kdebase-runtime/f14/master] backport to fix the freeze of kded on first use of the network:/kio-slave

Than Ngo than at fedoraproject.org
Tue Aug 10 09:39:31 UTC 2010


commit 569526af65d13ff7a5c9676a8c99a79b0cb0bc31
Author: Than Ngo <than at redhat.com>
Date:   Tue Aug 10 11:49:40 2010 +0200

    backport to fix the freeze of kded on first use of the network:/kio-slave

 kdebase-runtime-4.5.0-kioslave.patch |   35 ++++++++++++++++++++++++++++++++++
 kdebase-runtime.spec                 |   17 +++++++++++++--
 2 files changed, 49 insertions(+), 3 deletions(-)
---
diff --git a/kdebase-runtime-4.5.0-kioslave.patch b/kdebase-runtime-4.5.0-kioslave.patch
new file mode 100644
index 0000000..9504bf0
--- /dev/null
+++ b/kdebase-runtime-4.5.0-kioslave.patch
@@ -0,0 +1,35 @@
+diff -Nur kdebase-runtime-4.5.0/kioslave/network/network/builder/upnp/upnpnetworkbuilder.cpp kdebase-runtime-4.5.0.me/kioslave/network/network/builder/upnp/upnpnetworkbuilder.cpp
+--- kdebase-runtime-4.5.0/kioslave/network/network/builder/upnp/upnpnetworkbuilder.cpp	2010-07-12 23:08:17.000000000 +0200
++++ kdebase-runtime-4.5.0.me/kioslave/network/network/builder/upnp/upnpnetworkbuilder.cpp	2010-08-10 11:27:22.000000000 +0200
+@@ -36,6 +36,7 @@
+ #include <QtDBus/QDBusConnection>
+ #include <QtDBus/QDBusInterface>
+ #include <QtDBus/QDBusPendingCallWatcher>
++#include <QtCore/QTimer>
+ #include <QtCore/QStringList>
+ 
+ #include <KDebug>
+@@ -60,6 +61,11 @@
+ 
+ void UpnpNetworkBuilder::start()
+ {
++    QTimer::singleShot(0, this, SLOT(startBrowse()));
++}
++
++void UpnpNetworkBuilder::startBrowse()
++{
+     qDBusRegisterMetaType<DeviceTypeMap>();
+     qDBusRegisterMetaType<Cagibi::Device>();
+ 
+diff -Nur kdebase-runtime-4.5.0/kioslave/network/network/builder/upnp/upnpnetworkbuilder.h kdebase-runtime-4.5.0.me/kioslave/network/network/builder/upnp/upnpnetworkbuilder.h
+--- kdebase-runtime-4.5.0/kioslave/network/network/builder/upnp/upnpnetworkbuilder.h	2010-07-12 23:08:17.000000000 +0200
++++ kdebase-runtime-4.5.0.me/kioslave/network/network/builder/upnp/upnpnetworkbuilder.h	2010-08-10 11:27:22.000000000 +0200
+@@ -63,6 +63,8 @@
+     void removeUPnPDevices( const QList<Cagibi::Device>& devices );
+ 
+   private Q_SLOTS:
++    void startBrowse();
++
+     void onDevicesAdded( const DeviceTypeMap& deviceTypeMap );
+     void onDevicesRemoved( const DeviceTypeMap& deviceTypeMap );
+     void onAddedDeviceDetails( const Cagibi::Device& device );
diff --git a/kdebase-runtime.spec b/kdebase-runtime.spec
index aa7a7b2..70fdef6 100644
--- a/kdebase-runtime.spec
+++ b/kdebase-runtime.spec
@@ -6,7 +6,7 @@
 Name:          kdebase-runtime
 Summary:       KDE Runtime
 Version:       4.5.0
-Release:       1%{?dist}
+Release:       3%{?dist}
 
 # http://techbase.kde.org/Policies/Licensing_Policy
 License:       LGPLv2+
@@ -24,7 +24,10 @@ Patch5:        kdebase-runtime-4.3.1-manpath.patch
 # add OnlyShowIn=KDE  to Desktop/Home.desktop (like trash.desktop)
 Patch6:        kdebase-runtime-4.3.3-home_onlyshowin_kde.patch
 
-## 4.4 Upstream patches
+## 4.5 Upstream patches
+# backport of 1160390, fixed: start call to cagibi only in next event loop, could be started
+# in on-demand load by a d-bus call ourself, so d-bus connection has a mutex locked already
+Patch100: kdebase-runtime-4.5.0-kioslave.patch
 
 %if 0%{?fedora} && 0%{?fedora} < 12
 # kcm_filetypes moved to here
@@ -95,6 +98,8 @@ Group:   System Environment/Libraries
 Requires: kdelibs4%{?_isa} >= %{version}
 Requires: kdepimlibs%{?_isa} >= %{version}
 Requires: %{name} = %{version}-%{release}
+# cagibi is runtime dep, a dbus service
+Requires: cagibi
 %description libs
 %{summary}.
 
@@ -116,7 +121,7 @@ BuildArch: noarch
 %patch3 -p1 -b .iconthemes-inherit
 #patch5 -p1 -b .manpath
 %patch6 -p1 -b .home_onlyshowin_kde
-
+%patch100 -p1 -b .kioslave
 
 %build
 mkdir -p %{_target_platform}
@@ -244,6 +249,12 @@ fi
 
 
 %changelog
+* Tue Aug 10 2010 Than Ngo <than at redhat.com> - 4.5.0-3
+- backport to fix the freeze of kded on first use of the network:/kio-slave
+
+* Fri Aug 06 2010 Jaroslav Reznik <jreznik at redhat.com> - 4.5.0-2
+- requires cagibi
+
 * Tue Aug 03 2010 Than Ngo <than at redhat.com> - 4.5.0-1
 - 4.5.0
 


More information about the scm-commits mailing list