Fix ratio calculation for purely seeded torrents

This commit is contained in:
Christophe Dumez 2011-10-16 09:41:59 +03:00
parent ec5b9c769a
commit 422b483d78

View File

@ -1587,14 +1587,20 @@ qreal QBtSession::getRealRatio(const QString &hash) const{
if(!h.is_valid()) {
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_upload == 0)
return 0;
return MAX_RATIO+1;
}
qreal ratio = all_time_upload / (float) all_time_download;
Q_ASSERT(ratio >= 0.);
if(ratio > MAX_RATIO)