What changed, and why it matters
This commit is a routine code cleanup that swaps out old Qt programming interfaces for their newer replacements. It does not fix a security bug and does not introduce any obvious security weakness. The changes are purely about keeping the code compatible with newer versions of the Qt toolkit.
No security action required. Treat as normal maintenance; verify the build still passes with the targeted Qt version.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch replaces deprecated Qt APIs with current equivalents: QDateTime::toTime_t() becomes QDateTime::toSecsSinceEpoch(), QDateTime::fromTime_t() becomes QDateTime::fromSecsSinceEpoch(), and QString::splitRef() becomes QString::split(). The functional behavior is intended to remain the same. No security-sensitive logic is altered.
Changed components
src/libwalletqt/TransactionHistory.cppsrc/libwalletqt/TransactionInfo.cppsrc/libwalletqt/WalletManager.cppsrc/qt/updater.cppInspect captured patch +5 / −5
diff --git a/src/libwalletqt/TransactionHistory.cpp b/src/libwalletqt/TransactionHistory.cpp
index f5c3b75..90085ae 100644
--- a/src/libwalletqt/TransactionHistory.cpp
+++ b/src/libwalletqt/TransactionHistory.cpp
@@ -226,7 +226,7 @@ QString TransactionHistory::writeCSV(quint32 accountIndex, QString out)
quint64 blockHeight = info.blockHeight();
QDateTime timeStamp = info.timestamp();
QString date = info.date() + " " + info.time();
- uint epoch = timeStamp.toTime_t();
+ uint epoch = static_cast<uint>(timeStamp.toSecsSinceEpoch());
QString displayAmount = info.displayAmount();
QString paymentId = info.paymentId();
if(paymentId == "0000000000000000"){
diff --git a/src/libwalletqt/TransactionInfo.cpp b/src/libwalletqt/TransactionInfo.cpp
index 3a14398..dbc1184 100644
--- a/src/libwalletqt/TransactionInfo.cpp
+++ b/src/libwalletqt/TransactionInfo.cpp
@@ -161,7 +161,7 @@ TransactionInfo::TransactionInfo(const Monero::TransactionInfo *pimpl, QObject *
, m_description(QString::fromStdString(pimpl->description()))
, m_pending(pimpl->isPending())
, m_subaddrAccount(pimpl->subaddrAccount())
- , m_timestamp(QDateTime::fromTime_t(pimpl->timestamp()))
+ , m_timestamp(QDateTime::fromSecsSinceEpoch(static_cast<qint64>(pimpl->timestamp())))
, m_unlockTime(pimpl->unlockTime())
{
for (auto const &t: pimpl->transfers())
diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp
index ae03357..1b3de87 100644
--- a/src/libwalletqt/WalletManager.cpp
+++ b/src/libwalletqt/WalletManager.cpp
@@ -426,10 +426,10 @@ QVariantMap WalletManager::parse_uri_to_object(const QString &uri) const
{
for (const QString &item : unknown_parameters)
{
- const auto parsed_item = item.splitRef("=");
+ const auto parsed_item = item.split('=');
if (parsed_item.size() == 2)
{
- extra_parameters.insert(parsed_item[0].toString(), parsed_item[1].toString());
+ extra_parameters.insert(parsed_item[0], parsed_item[1]);
}
}
}
diff --git a/src/qt/updater.cpp b/src/qt/updater.cpp
index abe217a..14fc87e 100644
--- a/src/qt/updater.cpp
+++ b/src/qt/updater.cpp
@@ -124,7 +124,7 @@ QByteArray Updater::getHash(const void *data, size_t size) const
QByteArray Updater::parseShasumOutput(const QString &message, const QString &filename) const
{
- for (const auto &line : message.splitRef("\n"))
+ for (const auto &line : message.split('\n'))
{
const auto trimmed = line.trimmed();
if (trimmed.endsWith(filename))
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.