diff --git a/src/qtlibtorrent/torrentspeedmonitor.cpp b/src/qtlibtorrent/torrentspeedmonitor.cpp index 437a28a5b..f898e4acc 100644 --- a/src/qtlibtorrent/torrentspeedmonitor.cpp +++ b/src/qtlibtorrent/torrentspeedmonitor.cpp @@ -29,8 +29,6 @@ */ #include -#include -#include #include "qbtsession.h" #include "misc.h" @@ -141,6 +139,10 @@ qlonglong TorrentSpeedMonitor::getETA(const QString &hash, const libtorrent::tor void TorrentSpeedMonitor::statsReceived(const stats_alert &stats) { - m_samples[misc::toQString(stats.handle.info_hash())].addSample(stats.transferred[stats_alert::download_payload] * 1000 / stats.interval, - stats.transferred[stats_alert::upload_payload] * 1000 / stats.interval); + Q_ASSERT(stats.interval >= 1000); + + int speedDL = static_cast(static_cast(stats.transferred[stats_alert::download_payload]) * 1000 / stats.interval); + int speedUL = static_cast(static_cast(stats.transferred[stats_alert::upload_payload]) * 1000 / stats.interval); + + m_samples[misc::toQString(stats.handle.info_hash())].addSample(speedDL, speedUL); }