[Pidgin] #814: Fix: self-canceling file transfer
Pidgin
trac at pidgin.im
Thu May 10 02:17:22 EDT 2007
#814: Fix: self-canceling file transfer
------------------------+---------------------------------------------------
Reporter: vampire | Owner: datallah
Type: patch | Status: new
Priority: minor | Milestone: 2.0.1
Component: libpurple | Version: 2.0
Resolution: | Keywords: filetransfer
Pending: 0 |
------------------------+---------------------------------------------------
Comment (by vampire):
At the time I commented on the SF patch I had it all figured out, but now
I forgot :)
Taking another glance, there are 2 cases:
* the protocol uses the default implementation in purple_xfer_read(),
which calls read(), and:
* returns 0 if read() errored with EAGAIN -- we'll have to try again
later
* returns -1 if read() returned any other error, or read() returned 0
* returns the number of bytes received otherwise
* the protocol has its own _xfer_read() function, which currently means
yahoo and jabber OOB; they seem to (and should) follow the same convention
So it makes sense only to remote_cancel the transfer if purple_xfer_read()
returns < 0.
--
Ticket URL: <http://developer.pidgin.im/ticket/814#comment:3>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list