From 8dda44b562996389000ce1b16168040f72340dbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Blin?= <sebastien.blin@savoirfairelinux.com> Date: Fri, 27 Jan 2023 16:41:36 -0500 Subject: [PATCH] misc: fix "Can't find contact..." warning Scenario, create a swarm with self. As a warning, it will show "Can't find contact YOUR_ID this is a bug, please report" because your account is not in your contacts. Change-Id: I6f49f8fa77132daf00396b62da9ded470df49f98 --- src/app/conversationlistmodelbase.cpp | 20 ++++++++++++++++++-- src/libclient/contactmodel.cpp | 2 +- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/app/conversationlistmodelbase.cpp b/src/app/conversationlistmodelbase.cpp index 82c0bb1e2..645c741d1 100644 --- a/src/app/conversationlistmodelbase.cpp +++ b/src/app/conversationlistmodelbase.cpp @@ -173,10 +173,26 @@ ConversationListModelBase::dataForItem(item_t item, int role) const if (item.isCoreDialog()) { auto peerUriList = model_->peersForConversation(item.uid); - if (peerUriList.isEmpty()) { + if (peerUriList.isEmpty()) return {}; - } auto peerUri = peerUriList.at(0); + if (peerUri == lrcInstance_->getCurrentAccountInfo().profileInfo.uri) { + // Conversation alone with self + switch (role) { + case Role::BestId: + return QVariant(lrcInstance_->accountModel().bestIdForAccount(peerUri)); + case Role::Alias: + return QVariant(lrcInstance_->getCurrentAccountInfo().profileInfo.alias); + case Role::RegisteredName: + return QVariant(lrcInstance_->getCurrentAccountInfo().registeredName); + case Role::URI: + return QVariant(peerUri); + case Role::IsBanned: + return QVariant(false); + case Role::ContactType: + return QVariant(static_cast<int>(lrcInstance_->getCurrentAccountInfo().profileInfo.type)); + } + } ContactModel* contactModel; contact::Info contact {}; contactModel = lrcInstance_->getCurrentAccountInfo().contactModel.get(); diff --git a/src/libclient/contactmodel.cpp b/src/libclient/contactmodel.cpp index 7e84c1ca7..068abfcca 100644 --- a/src/libclient/contactmodel.cpp +++ b/src/libclient/contactmodel.cpp @@ -777,7 +777,7 @@ ContactModelPimpl::slotNewBuddySubscription(const QString& accountId, void ContactModelPimpl::slotContactAdded(const QString& accountId, const QString& contactUri, - bool confirmed) + bool) { if (accountId != linked.owner.id) return; -- GitLab