Re: How to debug kioslave problems ? [Was: Problem opening
Hi David![color=blue]
> On Monday 03 April 2006 21:41, Pavel Troller wrote:[color=green]
> > =A0 What to do next ? Is it necessary to write a real get(), or could i=[/color][/color]
t be[color=blue][color=green]
> > possible to omit its call for kio_bluetooth, as it used to be ?[/color]
> =[/color]
[color=blue]
> I'm guessing that it implements copy()? And it has copyToFile=3Dtrue in t=[/color]
he .protocol?
No. The only attributes (excluding Description) in its .protocol are:
[Protocol]
exec=3Dkio_bluetooth
protocol=3Dbluetooth
input=3Dnone
output=3Dfilesystem
reading=3Dtrue[color=blue]
> And that you used to copy to file:/ previously, but nowadays you're copyi=[/color]
ng to other =
[color=blue]
> protocols instead, like system:/ or media:/ ?
> This would explain it. Otherwise my crystal ball is deficient ;)[/color]
I'm afraid that I didn't understand you fully.
kio_bluetooth is something like a "meta-slave". There are no real files in =
it.
There are only objects pointing to other slaves, mostly sdp:/, describing y=
our
local and remote bluetooth devices. They have a nature of a directory, i.e.
they can be opened and then another objects appear in them, but this is han=
dled
by a different slave (sdp:/). So I think there is not possible to copy anyt=
hing
"real" into/from this bluetooth:/ pseudo-directory. I didn't find copy() =
implementation at all, and get() is just the stub which was not supposed to=
be
called.
[color=blue]
> =[/color]
[color=blue]
> To explain this: get() is used to read a file, except when the slave impl=[/color]
ements copy()[color=blue]
> and we're copying to file:/, then instead of shipping the data back to th=[/color]
e app, the slave[color=blue]
> is in charge of directly writing it out into a file. So get isn't called =[/color]
in that case.[color=blue]
> But in most other cases - copying to other protocols, or if copy() isn't =[/color]
implemented,[color=blue]
> then get() is the -only- way to get the data. Sounds to me like it should=[/color]
be implemented...[color=blue]
> or is bluetooth:/ not about reading files somehow?[/color]
I think that really, bluetooth:/ is just about accessing BT devices opening
a "virtual directory". There are really no files in it. By modifying the de=
bug
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() woul=
d be
much more appropriate, and then listDir().
With regards, Pavel Troller
=
[color=blue][color=green]
>> Visit [url]http://mail.kde.org/mailman/listinfo/kde-devel#unsub[/url] to unsubscrib=[/color][/color]
e <<