Browse Source

- Catch invalid_handle exception in savefastresume data

adaptive-webui-19844
Christophe Dumez 15 years ago
parent
commit
27aff04f11
  1. 4
      src/bittorrent.cpp
  2. 3
      src/reverseresolution.h

4
src/bittorrent.cpp

@ -1124,8 +1124,10 @@ void Bittorrent::saveFastResumeData() {
if (rda) { if (rda) {
--num_resume_data; --num_resume_data;
s->pop_alert(); s->pop_alert();
try {
// Remove torrent from session // Remove torrent from session
s->remove_torrent(rda->handle); s->remove_torrent(rda->handle);
}catch(libtorrent::libtorrent_exception){}
continue; continue;
} }
save_resume_data_alert const* rd = dynamic_cast<save_resume_data_alert const*>(a); save_resume_data_alert const* rd = dynamic_cast<save_resume_data_alert const*>(a);
@ -1515,7 +1517,7 @@ void Bittorrent::readAlerts() {
QHash<QString, TrackerInfos> trackers_data = trackersInfos.value(h.hash(), QHash<QString, TrackerInfos>()); QHash<QString, TrackerInfos> trackers_data = trackersInfos.value(h.hash(), QHash<QString, TrackerInfos>());
TrackerInfos data = trackers_data.value(tracker_url, TrackerInfos(tracker_url)); TrackerInfos data = trackers_data.value(tracker_url, TrackerInfos(tracker_url));
data.last_message = misc::toQString(p->msg); data.last_message = misc::toQString(p->msg);
#ifndef LIBTORRENT_0_15 #ifndef LIBTORRENT_0_15
data.verified = false; data.verified = false;
++data.fail_count; ++data.fail_count;
#endif #endif

3
src/reverseresolution.h

@ -56,10 +56,11 @@ public:
~ReverseResolutionST() { ~ReverseResolutionST() {
stopped = true; stopped = true;
if(isRunning()) if(isRunning()) {
resolver.cancel(); resolver.cancel();
wait(); wait();
} }
}
void setIP(boost::asio::ip::tcp::endpoint &_ip) { void setIP(boost::asio::ip::tcp::endpoint &_ip) {
ip = _ip; ip = _ip;

Loading…
Cancel
Save