mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-11 07:18:08 +00:00
Merge pull request #16801 from Chocobo1/int
Migrate away from unsigned integer types
This commit is contained in:
commit
9318f05e2b
@ -12,7 +12,7 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
/** Print a demangled stack backtrace of the caller function to FILE* out. */
|
/** Print a demangled stack backtrace of the caller function to FILE* out. */
|
||||||
static inline void print_stacktrace(FILE *out = stderr, unsigned int max_frames = 63)
|
static inline void print_stacktrace(FILE *out = stderr, const int max_frames = 63)
|
||||||
{
|
{
|
||||||
fprintf(out, "Stack trace:\n");
|
fprintf(out, "Stack trace:\n");
|
||||||
|
|
||||||
|
@ -34,10 +34,10 @@ namespace BitTorrent
|
|||||||
{
|
{
|
||||||
struct CacheStatus
|
struct CacheStatus
|
||||||
{
|
{
|
||||||
quint64 totalUsedBuffers = 0;
|
qint64 totalUsedBuffers = 0;
|
||||||
quint64 jobQueueLength = 0;
|
qint64 jobQueueLength = 0;
|
||||||
quint64 averageJobTime = 0;
|
qint64 averageJobTime = 0;
|
||||||
quint64 queuedBytes = 0;
|
qint64 queuedBytes = 0;
|
||||||
qreal readRatio = 0; // TODO: remove when LIBTORRENT_VERSION_NUM >= 20000
|
qreal readRatio = 0; // TODO: remove when LIBTORRENT_VERSION_NUM >= 20000
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -4702,12 +4702,12 @@ void Session::startUpTorrents()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
quint64 Session::getAlltimeDL() const
|
qint64 Session::getAlltimeDL() const
|
||||||
{
|
{
|
||||||
return m_statistics->getAlltimeDL();
|
return m_statistics->getAlltimeDL();
|
||||||
}
|
}
|
||||||
|
|
||||||
quint64 Session::getAlltimeUL() const
|
qint64 Session::getAlltimeUL() const
|
||||||
{
|
{
|
||||||
return m_statistics->getAlltimeUL();
|
return m_statistics->getAlltimeUL();
|
||||||
}
|
}
|
||||||
@ -5201,10 +5201,10 @@ void Session::handleSessionStatsAlert(const lt::session_stats_alert *p)
|
|||||||
const int64_t dhtDownload = stats[m_metricIndices.dht.dhtBytesIn];
|
const int64_t dhtDownload = stats[m_metricIndices.dht.dhtBytesIn];
|
||||||
const int64_t dhtUpload = stats[m_metricIndices.dht.dhtBytesOut];
|
const int64_t dhtUpload = stats[m_metricIndices.dht.dhtBytesOut];
|
||||||
|
|
||||||
auto calcRate = [interval](const quint64 previous, const quint64 current)
|
const auto calcRate = [interval](const qint64 previous, const qint64 current) -> qint64
|
||||||
{
|
{
|
||||||
Q_ASSERT(current >= previous);
|
Q_ASSERT(current >= previous);
|
||||||
return static_cast<quint64>((current - previous) / interval);
|
return ((current - previous) / interval);
|
||||||
};
|
};
|
||||||
|
|
||||||
m_status.payloadDownloadRate = calcRate(m_status.totalPayloadDownload, totalPayloadDownload);
|
m_status.payloadDownloadRate = calcRate(m_status.totalPayloadDownload, totalPayloadDownload);
|
||||||
|
@ -469,8 +469,8 @@ namespace BitTorrent
|
|||||||
bool hasRunningSeed() const;
|
bool hasRunningSeed() const;
|
||||||
const SessionStatus &status() const;
|
const SessionStatus &status() const;
|
||||||
const CacheStatus &cacheStatus() const;
|
const CacheStatus &cacheStatus() const;
|
||||||
quint64 getAlltimeDL() const;
|
qint64 getAlltimeDL() const;
|
||||||
quint64 getAlltimeUL() const;
|
qint64 getAlltimeUL() const;
|
||||||
bool isListening() const;
|
bool isListening() const;
|
||||||
|
|
||||||
MaxRatioAction maxRatioAction() const;
|
MaxRatioAction maxRatioAction() const;
|
||||||
|
@ -39,37 +39,37 @@ namespace BitTorrent
|
|||||||
// Current download rate for the BT
|
// Current download rate for the BT
|
||||||
// session. Payload means that it only take into
|
// session. Payload means that it only take into
|
||||||
// account "useful" part of the rate
|
// account "useful" part of the rate
|
||||||
quint64 payloadDownloadRate = 0;
|
qint64 payloadDownloadRate = 0;
|
||||||
|
|
||||||
// Current upload rate for the BT
|
// Current upload rate for the BT
|
||||||
// session. Payload means that it only take into
|
// session. Payload means that it only take into
|
||||||
// account "useful" part of the rate
|
// account "useful" part of the rate
|
||||||
quint64 payloadUploadRate = 0;
|
qint64 payloadUploadRate = 0;
|
||||||
|
|
||||||
// Additional download/upload rates
|
// Additional download/upload rates
|
||||||
quint64 uploadRate = 0;
|
qint64 uploadRate = 0;
|
||||||
quint64 downloadRate = 0;
|
qint64 downloadRate = 0;
|
||||||
quint64 ipOverheadUploadRate = 0;
|
qint64 ipOverheadUploadRate = 0;
|
||||||
quint64 ipOverheadDownloadRate = 0;
|
qint64 ipOverheadDownloadRate = 0;
|
||||||
quint64 dhtUploadRate = 0;
|
qint64 dhtUploadRate = 0;
|
||||||
quint64 dhtDownloadRate = 0;
|
qint64 dhtDownloadRate = 0;
|
||||||
quint64 trackerUploadRate = 0;
|
qint64 trackerUploadRate = 0;
|
||||||
quint64 trackerDownloadRate = 0;
|
qint64 trackerDownloadRate = 0;
|
||||||
|
|
||||||
quint64 totalDownload = 0;
|
qint64 totalDownload = 0;
|
||||||
quint64 totalUpload = 0;
|
qint64 totalUpload = 0;
|
||||||
quint64 totalPayloadDownload = 0;
|
qint64 totalPayloadDownload = 0;
|
||||||
quint64 totalPayloadUpload = 0;
|
qint64 totalPayloadUpload = 0;
|
||||||
quint64 ipOverheadUpload = 0;
|
qint64 ipOverheadUpload = 0;
|
||||||
quint64 ipOverheadDownload = 0;
|
qint64 ipOverheadDownload = 0;
|
||||||
quint64 dhtUpload = 0;
|
qint64 dhtUpload = 0;
|
||||||
quint64 dhtDownload = 0;
|
qint64 dhtDownload = 0;
|
||||||
quint64 trackerUpload = 0;
|
qint64 trackerUpload = 0;
|
||||||
quint64 trackerDownload = 0;
|
qint64 trackerDownload = 0;
|
||||||
quint64 totalWasted = 0;
|
qint64 totalWasted = 0;
|
||||||
quint64 diskReadQueue = 0;
|
qint64 diskReadQueue = 0;
|
||||||
quint64 diskWriteQueue = 0;
|
qint64 diskWriteQueue = 0;
|
||||||
quint64 dhtNodes = 0;
|
qint64 dhtNodes = 0;
|
||||||
quint64 peersCount = 0;
|
qint64 peersCount = 0;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -42,10 +42,6 @@ using namespace BitTorrent;
|
|||||||
Statistics::Statistics(Session *session)
|
Statistics::Statistics(Session *session)
|
||||||
: QObject(session)
|
: QObject(session)
|
||||||
, m_session(session)
|
, m_session(session)
|
||||||
, m_sessionUL(0)
|
|
||||||
, m_sessionDL(0)
|
|
||||||
, m_lastWrite(0)
|
|
||||||
, m_dirty(false)
|
|
||||||
{
|
{
|
||||||
load();
|
load();
|
||||||
connect(&m_timer, &QTimer::timeout, this, &Statistics::gather);
|
connect(&m_timer, &QTimer::timeout, this, &Statistics::gather);
|
||||||
@ -59,12 +55,12 @@ Statistics::~Statistics()
|
|||||||
save();
|
save();
|
||||||
}
|
}
|
||||||
|
|
||||||
quint64 Statistics::getAlltimeDL() const
|
qint64 Statistics::getAlltimeDL() const
|
||||||
{
|
{
|
||||||
return m_alltimeDL + m_sessionDL;
|
return m_alltimeDL + m_sessionDL;
|
||||||
}
|
}
|
||||||
|
|
||||||
quint64 Statistics::getAlltimeUL() const
|
qint64 Statistics::getAlltimeUL() const
|
||||||
{
|
{
|
||||||
return m_alltimeUL + m_sessionUL;
|
return m_alltimeUL + m_sessionUL;
|
||||||
}
|
}
|
||||||
@ -95,8 +91,8 @@ void Statistics::save() const
|
|||||||
|
|
||||||
SettingsPtr s = Profile::instance()->applicationSettings(u"qBittorrent-data"_qs);
|
SettingsPtr s = Profile::instance()->applicationSettings(u"qBittorrent-data"_qs);
|
||||||
QVariantHash v;
|
QVariantHash v;
|
||||||
v.insert(u"AlltimeDL"_qs, m_alltimeDL + m_sessionDL);
|
v.insert(u"AlltimeDL"_qs, (m_alltimeDL + m_sessionDL));
|
||||||
v.insert(u"AlltimeUL"_qs, m_alltimeUL + m_sessionUL);
|
v.insert(u"AlltimeUL"_qs, (m_alltimeUL + m_sessionUL));
|
||||||
s->setValue(u"Stats/AllStats"_qs, v);
|
s->setValue(u"Stats/AllStats"_qs, v);
|
||||||
m_dirty = false;
|
m_dirty = false;
|
||||||
m_lastWrite = now;
|
m_lastWrite = now;
|
||||||
|
@ -45,8 +45,8 @@ public:
|
|||||||
explicit Statistics(BitTorrent::Session *session);
|
explicit Statistics(BitTorrent::Session *session);
|
||||||
~Statistics();
|
~Statistics();
|
||||||
|
|
||||||
quint64 getAlltimeDL() const;
|
qint64 getAlltimeDL() const;
|
||||||
quint64 getAlltimeUL() const;
|
qint64 getAlltimeUL() const;
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void gather();
|
void gather();
|
||||||
@ -56,13 +56,12 @@ private:
|
|||||||
void load();
|
void load();
|
||||||
|
|
||||||
BitTorrent::Session *m_session;
|
BitTorrent::Session *m_session;
|
||||||
// Will overflow at 15.9 EiB
|
qint64 m_alltimeUL = 0;
|
||||||
quint64 m_alltimeUL;
|
qint64 m_alltimeDL = 0;
|
||||||
quint64 m_alltimeDL;
|
qint64 m_sessionUL = 0;
|
||||||
quint64 m_sessionUL;
|
qint64 m_sessionDL = 0;
|
||||||
quint64 m_sessionDL;
|
mutable qint64 m_lastWrite = 0;
|
||||||
mutable qint64 m_lastWrite;
|
mutable bool m_dirty = false;
|
||||||
mutable bool m_dirty;
|
|
||||||
|
|
||||||
QTimer m_timer;
|
QTimer m_timer;
|
||||||
};
|
};
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
#include "base/path.h"
|
#include "base/path.h"
|
||||||
#include "base/utils/version.h"
|
#include "base/utils/version.h"
|
||||||
|
|
||||||
using PluginVersion = Utils::Version<unsigned short, 2>;
|
using PluginVersion = Utils::Version<short, 2>;
|
||||||
Q_DECLARE_METATYPE(PluginVersion)
|
Q_DECLARE_METATYPE(PluginVersion)
|
||||||
|
|
||||||
namespace Net
|
namespace Net
|
||||||
|
@ -1638,7 +1638,7 @@ void OptionsDialog::setLocale(const QString &localeStr)
|
|||||||
if (index < 0)
|
if (index < 0)
|
||||||
{
|
{
|
||||||
// Unrecognized, use US English
|
// Unrecognized, use US English
|
||||||
index = m_ui->comboI18n->findData(u"en", Qt::UserRole);
|
index = m_ui->comboI18n->findData(u"en"_qs, Qt::UserRole);
|
||||||
Q_ASSERT(index >= 0);
|
Q_ASSERT(index >= 0);
|
||||||
}
|
}
|
||||||
m_ui->comboI18n->setCurrentIndex(index);
|
m_ui->comboI18n->setCurrentIndex(index);
|
||||||
|
@ -47,7 +47,7 @@ ArticleListWidget::ArticleListWidget(QWidget *parent)
|
|||||||
RSS::Article *ArticleListWidget::getRSSArticle(QListWidgetItem *item) const
|
RSS::Article *ArticleListWidget::getRSSArticle(QListWidgetItem *item) const
|
||||||
{
|
{
|
||||||
Q_ASSERT(item);
|
Q_ASSERT(item);
|
||||||
return reinterpret_cast<RSS::Article *>(item->data(Qt::UserRole).value<quintptr>());
|
return item->data(Qt::UserRole).value<RSS::Article *>();
|
||||||
}
|
}
|
||||||
|
|
||||||
QListWidgetItem *ArticleListWidget::mapRSSArticle(RSS::Article *rssArticle) const
|
QListWidgetItem *ArticleListWidget::mapRSSArticle(RSS::Article *rssArticle) const
|
||||||
@ -127,7 +127,7 @@ QListWidgetItem *ArticleListWidget::createItem(RSS::Article *article) const
|
|||||||
auto *item = new QListWidgetItem;
|
auto *item = new QListWidgetItem;
|
||||||
|
|
||||||
item->setData(Qt::DisplayRole, article->title());
|
item->setData(Qt::DisplayRole, article->title());
|
||||||
item->setData(Qt::UserRole, reinterpret_cast<quintptr>(article));
|
item->setData(Qt::UserRole, QVariant::fromValue(article));
|
||||||
if (article->isRead())
|
if (article->isRead())
|
||||||
{
|
{
|
||||||
const QColor defaultColor {palette().color(QPalette::Inactive, QPalette::WindowText)};
|
const QColor defaultColor {palette().color(QPalette::Inactive, QPalette::WindowText)};
|
||||||
|
@ -105,7 +105,7 @@ FeedListWidget::FeedListWidget(QWidget *parent)
|
|||||||
m_rssToTreeItemMapping[RSS::Session::instance()->rootFolder()] = invisibleRootItem();
|
m_rssToTreeItemMapping[RSS::Session::instance()->rootFolder()] = invisibleRootItem();
|
||||||
|
|
||||||
m_unreadStickyItem = new FeedListItem(this);
|
m_unreadStickyItem = new FeedListItem(this);
|
||||||
m_unreadStickyItem->setData(0, Qt::UserRole, reinterpret_cast<quintptr>(RSS::Session::instance()->rootFolder()));
|
m_unreadStickyItem->setData(0, Qt::UserRole, QVariant::fromValue(RSS::Session::instance()->rootFolder()));
|
||||||
m_unreadStickyItem->setText(0, tr("Unread (%1)").arg(RSS::Session::instance()->rootFolder()->unreadCount()));
|
m_unreadStickyItem->setText(0, tr("Unread (%1)").arg(RSS::Session::instance()->rootFolder()->unreadCount()));
|
||||||
m_unreadStickyItem->setData(0, Qt::DecorationRole, UIThemeManager::instance()->getIcon(u"mail-folder-inbox"_qs));
|
m_unreadStickyItem->setData(0, Qt::DecorationRole, UIThemeManager::instance()->getIcon(u"mail-folder-inbox"_qs));
|
||||||
m_unreadStickyItem->setData(0, StickyItemTagRole, true);
|
m_unreadStickyItem->setData(0, StickyItemTagRole, true);
|
||||||
@ -213,7 +213,7 @@ RSS::Item *FeedListWidget::getRSSItem(QTreeWidgetItem *item) const
|
|||||||
{
|
{
|
||||||
if (!item) return nullptr;
|
if (!item) return nullptr;
|
||||||
|
|
||||||
return reinterpret_cast<RSS::Item *>(item->data(0, Qt::UserRole).value<quintptr>());
|
return item->data(0, Qt::UserRole).value<RSS::Item *>();
|
||||||
}
|
}
|
||||||
|
|
||||||
QTreeWidgetItem *FeedListWidget::mapRSSItem(RSS::Item *rssItem) const
|
QTreeWidgetItem *FeedListWidget::mapRSSItem(RSS::Item *rssItem) const
|
||||||
@ -275,7 +275,7 @@ QTreeWidgetItem *FeedListWidget::createItem(RSS::Item *rssItem, QTreeWidgetItem
|
|||||||
{
|
{
|
||||||
auto *item = new FeedListItem;
|
auto *item = new FeedListItem;
|
||||||
item->setData(0, Qt::DisplayRole, u"%1 (%2)"_qs.arg(rssItem->name(), QString::number(rssItem->unreadCount())));
|
item->setData(0, Qt::DisplayRole, u"%1 (%2)"_qs.arg(rssItem->name(), QString::number(rssItem->unreadCount())));
|
||||||
item->setData(0, Qt::UserRole, reinterpret_cast<quintptr>(rssItem));
|
item->setData(0, Qt::UserRole, QVariant::fromValue(rssItem));
|
||||||
m_rssToTreeItemMapping[rssItem] = item;
|
m_rssToTreeItemMapping[rssItem] = item;
|
||||||
|
|
||||||
QIcon icon;
|
QIcon icon;
|
||||||
|
@ -198,7 +198,7 @@ void RSSWidget::displayItemsListMenu()
|
|||||||
bool hasLink = false;
|
bool hasLink = false;
|
||||||
for (const QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
for (const QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
||||||
{
|
{
|
||||||
auto article = reinterpret_cast<RSS::Article *>(item->data(Qt::UserRole).value<quintptr>());
|
auto article = item->data(Qt::UserRole).value<RSS::Article *>();
|
||||||
Q_ASSERT(article);
|
Q_ASSERT(article);
|
||||||
|
|
||||||
if (!article->torrentUrl().isEmpty())
|
if (!article->torrentUrl().isEmpty())
|
||||||
@ -359,7 +359,7 @@ void RSSWidget::downloadSelectedTorrents()
|
|||||||
{
|
{
|
||||||
for (QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
for (QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
||||||
{
|
{
|
||||||
auto article = reinterpret_cast<RSS::Article *>(item->data(Qt::UserRole).value<quintptr>());
|
auto article = item->data(Qt::UserRole).value<RSS::Article *>();
|
||||||
Q_ASSERT(article);
|
Q_ASSERT(article);
|
||||||
|
|
||||||
// Mark as read
|
// Mark as read
|
||||||
@ -380,7 +380,7 @@ void RSSWidget::openSelectedArticlesUrls()
|
|||||||
{
|
{
|
||||||
for (QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
for (QListWidgetItem *item : asConst(m_articleListWidget->selectedItems()))
|
||||||
{
|
{
|
||||||
auto article = reinterpret_cast<RSS::Article *>(item->data(Qt::UserRole).value<quintptr>());
|
auto article = item->data(Qt::UserRole).value<RSS::Article *>();
|
||||||
Q_ASSERT(article);
|
Q_ASSERT(article);
|
||||||
|
|
||||||
// Mark as read
|
// Mark as read
|
||||||
|
@ -76,8 +76,8 @@ void StatsDialog::update()
|
|||||||
const BitTorrent::CacheStatus &cs = BitTorrent::Session::instance()->cacheStatus();
|
const BitTorrent::CacheStatus &cs = BitTorrent::Session::instance()->cacheStatus();
|
||||||
|
|
||||||
// All-time DL/UL
|
// All-time DL/UL
|
||||||
quint64 atd = BitTorrent::Session::instance()->getAlltimeDL();
|
const qint64 atd = BitTorrent::Session::instance()->getAlltimeDL();
|
||||||
quint64 atu = BitTorrent::Session::instance()->getAlltimeUL();
|
const qint64 atu = BitTorrent::Session::instance()->getAlltimeUL();
|
||||||
m_ui->labelAlltimeDL->setText(Utils::Misc::friendlyUnit(atd));
|
m_ui->labelAlltimeDL->setText(Utils::Misc::friendlyUnit(atd));
|
||||||
m_ui->labelAlltimeUL->setText(Utils::Misc::friendlyUnit(atu));
|
m_ui->labelAlltimeUL->setText(Utils::Misc::friendlyUnit(atu));
|
||||||
// Total waste (this session)
|
// Total waste (this session)
|
||||||
|
@ -126,8 +126,8 @@ namespace
|
|||||||
map[KEY_TRANSFER_DLRATELIMIT] = session->downloadSpeedLimit();
|
map[KEY_TRANSFER_DLRATELIMIT] = session->downloadSpeedLimit();
|
||||||
map[KEY_TRANSFER_UPRATELIMIT] = session->uploadSpeedLimit();
|
map[KEY_TRANSFER_UPRATELIMIT] = session->uploadSpeedLimit();
|
||||||
|
|
||||||
const quint64 atd = session->getAlltimeDL();
|
const qint64 atd = session->getAlltimeDL();
|
||||||
const quint64 atu = session->getAlltimeUL();
|
const qint64 atu = session->getAlltimeUL();
|
||||||
map[KEY_TRANSFER_ALLTIME_DL] = atd;
|
map[KEY_TRANSFER_ALLTIME_DL] = atd;
|
||||||
map[KEY_TRANSFER_ALLTIME_UL] = atu;
|
map[KEY_TRANSFER_ALLTIME_UL] = atu;
|
||||||
map[KEY_TRANSFER_TOTAL_WASTE_SESSION] = sessionStatus.totalWasted;
|
map[KEY_TRANSFER_TOTAL_WASTE_SESSION] = sessionStatus.totalWasted;
|
||||||
|
Loading…
Reference in New Issue
Block a user