Ticket #3586 (closed defect: fixed)

Opened 3 years ago

Last modified 3 weeks ago

File transfers are never canceled for real

Reported by: Edtech Owned by: asterix
Priority: high Milestone: 0.14
Component: usability Version: hg
Severity: critical Keywords:
Cc: Blocked By:
OS: All Blocking:

Description

If you cancel a transfert, the file is not released and do not can be removed as long as Gajim was not closed.

Attachments

Change History

Changed 3 years ago by steve-e

  • version changed from 0.11.3 to 0.11.4
  • milestone changed from 0.11.4 to 0.12

Changed 2 years ago by js

  • owner changed from asterix to js

Changed 2 years ago by js

  • priority changed from normal to high
  • owner changed from js to asterix
  • version changed from 0.11.4 to svn
  • os changed from Windows to All
  • summary changed from Cancel a transfer blocks the deletion of the downloaded file to File transfers are never canceled for real

I had a look at this, Asterix. It's not a Windows bug, it's a deeper bug - Windows just showed it because it can't delete opened files.

Gajim never closes the file handle when you cancel a transfer. In fact, it doesn't even cancel it properly. That explains why someone sometimes got a file that I already canceled. Everything that Gajim does it remove it from the FT window and send a rejection stanza, nothing more.

If you cancel the file before the other side accepts, the other side is still able to get the whole file. What we do is: We send a rejection and rely on the other side to close the stream. But that never closes our file handle. And if the other side doesn't close, we still transfer.

We need to rewrite cancelling file transfers, as this doesn't work at all.

I had a look at it, but I think the whole file transfer code is a bit strange - GUI and actual file transfer code is happily mixed. Could you maybe fix this, Asterix? You can also see on Linux that the file (and the stream, if the other side doesn't close it!) is never ended using lsof.

Changed 23 months ago by asterix

  • milestone changed from 0.12 to 0.13

Changed 23 months ago by js

  • severity changed from normal to critical
  • milestone changed from 0.13 to 0.12

Asterix, this is for 0.12 IMO, as this is a serious bug. It may leak private information, for example if you drop a file by accident in the chat window. Now you cancel it, but the other side still receives it - VERY, VERY bad. Already happened to me.

Changed 23 months ago by asterix

  • milestone changed from 0.12 to 0.13

this is in Gajim since ages, and nat many ppl complains. Ok it's bad, but it's hard to fix, and I don't want to release in 2 monthes. As currently all dev seems to be busy, I won't fix that for 0.12.

Changed 10 months ago by asterix

  • milestone 0.13 deleted

Changed 6 months ago by cleese

please fix this :)

Changed 3 weeks ago by Yann Leboulanger <asterix@…>

  • status changed from new to closed
  • resolution set to fixed
  • milestone set to 0.14

(In [04270cbd7e04]) don't send a canceld filetransfer. Fixes #3586

Add/Change #3586 (File transfers are never canceled for real)

Author


E-mail address and user name can be saved in the Preferences.


Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Next status will be 'needinfo'
 
Note: See TracTickets for help on using tickets.