Summary: | fish:// stalls when uploading | ||
---|---|---|---|
Product: | [Unmaintained] kio | Reporter: | Thorsten Staerk <dev> |
Component: | fish | Assignee: | Jörg Walter <trouble> |
Status: | RESOLVED NOT A BUG | ||
Severity: | normal | CC: | aacid |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
testcase that should upload a file to localhost
CMakeLists.txt needed to compile the test case working, as I added #include lines trace file when stalling |
Description
Thorsten Staerk
2008-05-11 13:05:22 UTC
Created attachment 24710 [details]
testcase that should upload a file to localhost
Before calling this test case, you need to
useradd -m fishuser
passwd fishuser
And do a cmake . && make to compile the test case. I add an attachment.
Created attachment 24712 [details]
CMakeLists.txt needed to compile the test case
The interesting thing is that it does work if I add some #include lines. Created attachment 24713 [details]
working, as I added #include lines
It just works sometimes, and sometimes I get EAGAIN. Created attachment 24715 [details]
trace file when stalling
note the part
socket(PF_FILE, SOCK_STREAM, 0) = 7
connect(7, {sa_family=AF_FILE, path="/tmp/.X11-unix/X0"}, 110) = 0
getpeername(7, {sa_family=AF_FILE, path="/tmp/.X11-unix/X0"},
[8371910236600008724]) = 0
uname({sys="Linux", node="tweedleburg", ...}) = 0
access("/root/.Xauthority", R_OK) = 0
open("/root/.Xauthority", O_RDONLY) = 8
fstat(8, {st_mode=S_IFREG|0600, st_size=386, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2ae1a8f0a000
read(8, "\0\0\0\4\300\250\0\5\0\0010\0\22MIT-MAGIC-COOKIE-1\0"..., 4096) = 386
close(8) = 0
munmap(0x2ae1a8f0a000, 4096) = 0
fcntl(7, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0
fcntl(7, F_SETFD, FD_CLOEXEC) = 0
select(8, [7], [7], NULL, NULL) = 1 (out [7])
writev(7, [{"l\0\v\0\0\0\22\0\20\0", 10}, {"\0\0", 2}, {"MIT-MAGIC-COOKIE-1",
18}, {"\0\0", 2}, {"z\222\317?\371R\333\331\'\37\311\16A\231\213M", 16}, {"",
0}], 6) = 48
read(7, 0x6294d0, 8) = -1 EAGAIN (Resource temporarily
unavailable)
Adding debugging output I find that the command if (!KIO::NetAccess::upload( tmpFile.fileName(), url, 0 )) err=QString::fromLatin1("Could not upload"); does not return. This is on kde4 right? Can you test after r806784? It all works correctly now and I describe how on http://www.staerk.de/thorsten/index.php/Using_a_kioslave_in_KDE_4#kio_fish One problem is that I did not understand kio_fish's signal/slot mechanism, so I set this to invalid. |