Re: How to debug kioslave problems ? [Was: Problem opening
> On Monday 03 April 2006 23:10, Pavel Troller wrote:[color=blue][color=green]
> > There are really no files in it. By modifying the debug
> > call, I've found that konq is now trying to get() all the initial
> > URL "bluetooth:/", which is definitely not a file.
> > I think that stat() would be much more appropriate, and then listDir().[/color]
> OK I think that this is missing in the .protocol:
> (edited to whichever fields listDir returns).[/color]
Yes, it helped a lot. Now the stat(bluetooth:/) function is called and there
is no error from the slave.
However, konqueror crashes immediately:
kio (KSycoca): Trying to open ksycoca from /var/tmp/kdecache-patrol/ksycoca
kio (KRun): Finished
konqueror [kdeinit] bluetooth:/: krun.cpp:1096: virtual void KRun::slotStatResult(KIO::Job*): Assertion `m_bScanFile || m_bIsDirectory' failed.
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = konqueror path = <unknown> pid = 26408
Does it mean that there is something wrong with the data returned by the
slave ? I've looked at krun.cpp and it seems that the only possibility is that
KIO::UDS_FILE_TYPE entry is not present. But in kiobluetooth.cpp, there is
addAtom(entry, UDS_MIME_TYPE, mimeType); // this is empty for the failing call
addAtom(entry, UDS_FILE_TYPE, S_IFDIR);
addAtom(entry, UDS_GUESSED_MIME_TYPE, "inode/folder");
and I've verified that this code is really executed when the slave runs.
So what the hell is going wrong now ?
With regards, Pavel Troller[color=blue]
> Without listing=, KDirLister thinks that the protocol doesn't support listing, so
> we (now) completely skip the listing stage and assume everything is a file,
> which is true with some protocols (like http).
> David Faure, [email]email@example.com[/email], sponsored by Trolltech to work on KDE,
> Konqueror ([url]http://www.konqueror.org[/url]), and KOffice ([url]http://www.koffice.org[/url]).[/color]
>> Visit [url]http://mail.kde.org/mailman/listinfo/kde-devel#unsub[/url] to unsubscribe <<[/color][/color]