From 1a6cb9ee99a35c0edd2b2bd1041daab895b90182 Mon Sep 17 00:00:00 2001 From: flow Date: Mon, 25 Jul 2022 13:59:56 -0300 Subject: chore: add some debugging prints in AccountList Signed-off-by: flow --- launcher/minecraft/auth/AccountList.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/launcher/minecraft/auth/AccountList.cpp b/launcher/minecraft/auth/AccountList.cpp index 2b851e18..b3b57c74 100644 --- a/launcher/minecraft/auth/AccountList.cpp +++ b/launcher/minecraft/auth/AccountList.cpp @@ -109,8 +109,10 @@ QStringList AccountList::profileNames() const { void AccountList::addAccount(const MinecraftAccountPtr account) { - // NOTE: Do not allow adding something that's already there - if(m_accounts.contains(account)) { + // NOTE: Do not allow adding something that's already there. We shouldn't let it continue + // because of the signal / slot connections after this. + if (m_accounts.contains(account)) { + qDebug() << "Tried to add account that's already on the accounts list!"; return; } @@ -123,6 +125,8 @@ void AccountList::addAccount(const MinecraftAccountPtr account) if(profileId.size()) { auto existingAccount = findAccountByProfileId(profileId); if(existingAccount != -1) { + qDebug() << "Replacing old account with a new one with the same profile ID!"; + MinecraftAccountPtr existingAccountPtr = m_accounts[existingAccount]; m_accounts[existingAccount] = account; if(m_defaultAccount == existingAccountPtr) { @@ -138,9 +142,12 @@ void AccountList::addAccount(const MinecraftAccountPtr account) // if we don't have this profileId yet, add the account to the end int row = m_accounts.count(); + qDebug() << "Inserting account at index" << row; + beginInsertRows(QModelIndex(), row, row); m_accounts.append(account); endInsertRows(); + onListChanged(); } -- cgit From 6fe55a79f18ac03c919c1ecbadde19fb2c82681b Mon Sep 17 00:00:00 2001 From: flow Date: Tue, 26 Jul 2022 12:53:28 -0300 Subject: fix: use const qualifier for operator==() and allow other comparisons This fixes an implicit behavior changed by C++17. Signed-off-by: flow --- launcher/QObjectPtr.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/launcher/QObjectPtr.h b/launcher/QObjectPtr.h index 57974939..173dc5e7 100644 --- a/launcher/QObjectPtr.h +++ b/launcher/QObjectPtr.h @@ -77,10 +77,12 @@ public: { return m_ptr; } - bool operator==(const shared_qobject_ptr& other) { + template + bool operator==(const shared_qobject_ptr& other) const { return m_ptr == other.m_ptr; } - bool operator!=(const shared_qobject_ptr& other) { + template + bool operator!=(const shared_qobject_ptr& other) const { return m_ptr != other.m_ptr; } -- cgit