On Tuesday 18 August 2015 10:45:00 Boudewijn Rempt wrote:
> if (!bus->isServiceRegistered(KDED_SERVICE_NAME)) { evaluates to false

I'm confused by the possible double negation. Do you mean isServiceRegistered 
returns true?
So it does see kded5 running on the current DBus session, right?

Oh. I think you found a real bug :-)
Does this patch help?

diff --git a/src/sycoca/ksycoca.cpp b/src/sycoca/ksycoca.cpp
index 7c4c3da..c203484 100644
--- a/src/sycoca/ksycoca.cpp
+++ b/src/sycoca/ksycoca.cpp
@@ -468,6 +468,7 @@ bool KSycocaPrivate::checkDatabase(BehaviorsIfNotFound 
ifNotFound)
             }
         } else {
             //qCDebug(SYCOCA) << "kded5 found";
+            kdedRunning = true;
             if (QStandardPaths::isTestModeEnabled()) {
                 QDBusInterface sycoca(KDED_SERVICE_NAME, KBUILDSYCOCA_PATH);
                 const QDBusReply<bool> testMode = 
sycoca.call(QLatin1String("isTestModeEnabled"));

The unittests have to work without kded, so they didn't catch this. Anyway I'm 
killing that kded
dependency as soon as I find the time.

> I might be better off porting away from kio since I cannot ship something
> that needs a running daemon or background process :-(

Well if you cannot even accept a secondary process then indeed KIO won't be an 
option for you.
But why such a strict requirement? This is no problem on Windows; is this about 
Android or iOS then?

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Working on KDE Frameworks 5

_______________________________________________
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

Reply via email to