Closed gubatron closed 7 years ago
This error was triggered by a corrupt memory due to the call to status()
in an invalid torrent handle. A check of is_valid()
is necessary.
so I guess I should take a look around:
com.frostwire.gui.bittorrent.BittorrentDownload.isCompleted()Z (8 bytes) @ 0x0000000110256194 [0x0000000110255d60+0x434]
j com.frostwire.gui.bittorrent.BTDownloadRowFilteredModel.getActiveUploads()I+45
and see if there's such a missing is_valid()
check
it looks like the check for is_valid()
might done already:
//com.frostwire.gui.bittorrent.BittorrentDownload.isCompleted()
public boolean isCompleted() {
return dl.isFinished();
}
...
// com.frostwire.gui.bittorrent.BittorrentDownload.isFinished()
public boolean isFinished() {
return th.isValid() && th.status().isFinished();
} // it's there!
th.isValid()
->
public boolean isValid() {
return th.is_valid();
}
I think this was mentioned elsewhere, when we had the issue with VPN-Drop protection
Then the call to status()
was done to soon, and in parallel to the BTEngine.stop()
. That's possible since the UI refresh timer runs in a different thread than the internal libtorrent
ASIO thread.
Sudden crash.
Perhaps related to issues with torrent finished alert not arriving when testing on FrostWire Desktop.