Problems with KService/KBuildSycoca in Comic Dataengine
Aaron J. Seigo
aseigo at kde.org
Mon Jul 25 08:59:59 UTC 2011
On Sunday, July 24, 2011 12:35:05 Matthias Fuchs wrote:
> Both have to do with KServiceTypeTrader
it's probably kbuildsycoca and kded, not KSTT.
when a comic is installed or removed, kbuildsycoca4 must be run; this will
automatically happen after some delay as kded4 watches the contents. a run of
it can be triggered manually by calling recreate() on the /kbuildsycoca DBus
object of org.kde.kded.
the KSycoca class (a singletone) provides a signal that lets you know when
things have changed in the database: void databaseChanged(const QStringList&
changedResources); (where changedResources would contain "services" in the
case of comics possibly changing)
this assumes, of course, that the comics files appear in one of the services
directories prior to kbuildsycoca being run.
iif kbuildsycoca is being run and working properly and still KSTT is not
returning the correct values then the mmap'd file is getting fouled somehow.
> Now I wonder how I should fix that. Do you have any ideas?
> The worst case "solution" would be not relying on KServiceTypeTrader at all
> though I want to avoid that.
that would make very little sense since you'd end up having to do essentially
the same thing ksycoca does; duplication of code rarely leads to actual
improvements :)
--
Aaron J. Seigo
humru othro a kohnu se
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA EE75 D6B7 2EB1 A7F1 DB43
KDE core developer sponsored by Qt Development Frameworks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20110725/71f70da3/attachment-0001.sig
More information about the Plasma-devel
mailing list