From 6a767e3cb4bbbe27d9c09ebca034d105e72af4c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Thu, 5 Aug 2021 15:46:13 -0400
Subject: [PATCH] contact_list: do not emit ContactAdded for non active
 contacts

This causes the client to show a lot of removed contacts to be
shown after syncing.

Change-Id: I66f0c343ad89812196222f29b23e7c6b5dbb8954
GitLab: https://git.jami.net/savoirfairelinux/ring-project/-/issues/1282
---
 src/jamidht/contact_list.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/jamidht/contact_list.cpp b/src/jamidht/contact_list.cpp
index de114ca5e0..1d88a227a7 100644
--- a/src/jamidht/contact_list.cpp
+++ b/src/jamidht/contact_list.cpp
@@ -162,7 +162,8 @@ ContactList::setContacts(const std::map<dht::InfoHash, Contact>& contacts)
     saveContacts();
     // Set contacts is used when creating a new device, so just announce new contacts
     for (auto& peer : contacts)
-        callbacks_.contactAdded(peer.first.toString(), peer.second.confirmed);
+        if (peer.second.isActive())
+            callbacks_.contactAdded(peer.first.toString(), peer.second.confirmed);
 }
 
 void
-- 
GitLab