kdelibs/kdelibs-4.0.1-dcop-servicet...

18 lines
1.0 KiB
Diff

diff -ur kdelibs-4.0.1/kdecore/services/kservice.cpp kdelibs-4.0.1-dcop-servicetype/kdecore/services/kservice.cpp
--- kdelibs-4.0.1/kdecore/services/kservice.cpp 2008-01-05 01:00:34.000000000 +0100
+++ kdelibs-4.0.1-dcop-servicetype/kdecore/services/kservice.cpp 2008-02-19 20:21:57.000000000 +0100
@@ -194,7 +194,12 @@
//Compatibility
if( dbusStartupType.isEmpty() && desktopGroup.hasKey("X-DCOP-ServiceType"))
{
- dbusStartupType = desktopGroup.readEntry("X-DCOP-ServiceType").toLower();
+ QString dcopStartupType = desktopGroup.readEntry("X-DCOP-ServiceType").toLower();
+ // We can't use unique or multi because KLauncher will try to use D-Bus instead of DCOP on it.
+ // Only "wait" is safe (only waits for the process to complete, no DCOP or D-Bus involved).
+ // We use the default "none" otherwise.
+ if (dcopStartupType == "wait")
+ dbusStartupType = dcopStartupType;
entryMap.remove("X-DCOP-ServiceType");
}
entryMap.remove("X-DBUS-StartupType");