[Pidgin] #16001: Duplicate calls to purple_xfer_set_bytes_sent()

Pidgin trac at pidgin.im
Tue Jun 23 16:04:26 EDT 2015


#16001: Duplicate calls to purple_xfer_set_bytes_sent()
-------------------------+-------------------------
 Reporter:  MarkDoliner  |       Owner:  tomkiewicz
     Type:  defect       |      Status:  new
Milestone:  3.0.0        |   Component:  libpurple
  Version:  3.0.0hg      |  Resolution:
 Keywords:               |
-------------------------+-------------------------

Comment (by mmcco):

 The tests obviously aren't conclusive because the issue was non-
 deterministic, but I think I figured it out.

 I first tested whether the files were being closed, but it seemed that
 they were.

 There seem to be two core issues:

 1. The latest written buffer size (`r`) is added to `priv->sent_bytes`
 when checking if the transfer is complete, but `purple_xfer_read_file()`
 and `purple_xfer_write_file()` also add to `priv->sent_bytes`.
 2. The transfer is checked for completeness early in `do_transfer()` and
 in `purple_xfer_write()`

 Here's the commit:

 https://hg.pidgin.im/soc/2015/mmcc/main/rev/acd5549cf5d6

--
Ticket URL: <https://developer.pidgin.im/ticket/16001#comment:7>
Pidgin <https://pidgin.im>
Pidgin


More information about the Tracker mailing list