Browse Source

Fix ratio calculation for purely seeded torrents

adaptive-webui-19844
Christophe Dumez 13 years ago
parent
commit
422b483d78
  1. 10
      src/qtlibtorrent/qbtsession.cpp

10
src/qtlibtorrent/qbtsession.cpp

@ -1587,14 +1587,20 @@ qreal QBtSession::getRealRatio(const QString &hash) const{
if(!h.is_valid()) { if(!h.is_valid()) {
return 0.; return 0.;
} }
const libtorrent::size_type all_time_download = h.all_time_download();
const libtorrent::size_type all_time_upload = h.all_time_upload(); libtorrent::size_type all_time_upload = h.all_time_upload();
libtorrent::size_type all_time_download = h.all_time_download();
if (all_time_download == 0 && h.is_seed()) {
// Purely seeded torrent
all_time_download = h.total_done();
}
if(all_time_download == 0) { if(all_time_download == 0) {
if(all_time_upload == 0) if(all_time_upload == 0)
return 0; return 0;
return MAX_RATIO+1; return MAX_RATIO+1;
} }
qreal ratio = all_time_upload / (float) all_time_download; qreal ratio = all_time_upload / (float) all_time_download;
Q_ASSERT(ratio >= 0.); Q_ASSERT(ratio >= 0.);
if(ratio > MAX_RATIO) if(ratio > MAX_RATIO)

Loading…
Cancel
Save