diff --git a/src/properties/propertieswidget.cpp b/src/properties/propertieswidget.cpp index f49621e86..83dbe6c37 100644 --- a/src/properties/propertieswidget.cpp +++ b/src/properties/propertieswidget.cpp @@ -349,7 +349,7 @@ void PropertiesWidget::loadDynamicData() { reannounce_lbl->setText(h.next_announce()); // Update ratio info const qreal ratio = QBtSession::instance()->getRealRatio(h.hash()); - if(ratio > 100.) + if(ratio > QBtSession::MAX_RATIO) shareRatio->setText(QString::fromUtf8("∞")); else shareRatio->setText(QString(QByteArray::number(ratio, 'f', 2))); diff --git a/src/qtlibtorrent/qbtsession.cpp b/src/qtlibtorrent/qbtsession.cpp index 24800f43d..f5c890738 100644 --- a/src/qtlibtorrent/qbtsession.cpp +++ b/src/qtlibtorrent/qbtsession.cpp @@ -82,7 +82,6 @@ using namespace libtorrent; QBtSession* QBtSession::m_instance = 0; const int MAX_TRACKER_ERRORS = 2; -const qreal MAX_RATIO = 100.; enum VersionType { NORMAL,ALPHA,BETA,RELEASE_CANDIDATE,DEVEL }; // Main constructor @@ -1442,12 +1441,12 @@ qreal QBtSession::getRealRatio(QString hash) const{ if(h.total_done() == 0) { if(h.all_time_upload() == 0) return 0; - return 101; + return MAX_RATIO+1; } qreal ratio = (float)h.all_time_upload()/(float)h.total_done(); Q_ASSERT(ratio >= 0.); - if(ratio > 100.) - ratio = 100.; + if(ratio > MAX_RATIO) + ratio = MAX_RATIO; return ratio; } diff --git a/src/qtlibtorrent/qbtsession.h b/src/qtlibtorrent/qbtsession.h index 0eda1b3c5..d60646b00 100644 --- a/src/qtlibtorrent/qbtsession.h +++ b/src/qtlibtorrent/qbtsession.h @@ -65,6 +65,9 @@ class QBtSession : public QObject { Q_OBJECT Q_DISABLE_COPY(QBtSession) +public: + static const qreal MAX_RATIO = 9999.; + private: explicit QBtSession(); static QBtSession* m_instance; diff --git a/src/transferlistdelegate.h b/src/transferlistdelegate.h index b925cb7f2..2b9e1fe8d 100644 --- a/src/transferlistdelegate.h +++ b/src/transferlistdelegate.h @@ -41,6 +41,7 @@ #include #include "misc.h" #include "torrentmodel.h" +#include "qbtsession.h" #ifdef Q_WS_WIN #include @@ -155,7 +156,7 @@ public: QItemDelegate::drawBackground(painter, opt, index); opt.displayAlignment = Qt::AlignRight; const qreal ratio = index.data().toDouble(); - if(ratio > 100.) + if(ratio > QBtSession::MAX_RATIO) QItemDelegate::drawDisplay(painter, opt, opt.rect, QString::fromUtf8("∞")); else QItemDelegate::drawDisplay(painter, opt, opt.rect, QString::number(ratio, 'f', 2));