Hang when peer connection closes while enumerating
Submitted by Ross Lagerwall
Assigned to gvf..@..e.bugs
Link to original bug (#720860)
Description
The is an easily reproducible hang when searching in nautilus with the sftp backend.
If the peer connection closes between the time that the enumerate job calls send_reply() and the time that the enumerate job actually finishes, then it gets stuck in peer_connection_closed() trying to cancel a job that cannot be cancelled.
It cannot be cancelled because g_vfs_job_cancel() does nothing if send_reply has been called.
Removing the "|| job->sent_reply" clause in g_vfs_job_cancel() fixes the problem, but I'm not sure if it is the correct fix.
Version: git master