From 41970019259869f2768f58935a2efa96761ffca3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Mon, 23 Sep 2024 14:14:32 -0400
Subject: [PATCH] conversation: cleanup

Change-Id: I2afda2b11742c741e13a3bbf7b7293c5b6c6d786
---
 src/jamidht/conversation.cpp | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/jamidht/conversation.cpp b/src/jamidht/conversation.cpp
index db5511889..a1b7711f1 100644
--- a/src/jamidht/conversation.cpp
+++ b/src/jamidht/conversation.cpp
@@ -750,10 +750,12 @@ Conversation::Impl::disconnectFromPeer(const std::string& peerUri)
     swarmManager_->deleteNode(toRemove);
 
     // Remove git sockets with this member
-    std::vector<DeviceId> gitToRm;
-    for (const auto& [deviceId, _] : gitSocketList_)
-        if (peerUri == repository_->uriFromDevice(deviceId.toString()))
-            removeGitSocket(deviceId);
+    for (auto it = gitSocketList_.begin(); it != gitSocketList_.end();) {
+        if (peerUri == repository_->uriFromDevice(it->first.toString()))
+            it = gitSocketList_.erase(it);
+        else
+            ++it;
+    }
 }
 
 std::vector<std::map<std::string, std::string>>
@@ -800,7 +802,7 @@ Conversation::Impl::commitsEndedCalls()
         value["duration"] = std::to_string((nowConverted - hostedCall.second) * 1000);
         auto itActive = std::find_if(activeCalls_.begin(),
                                      activeCalls_.end(),
-                                     [this, confId = hostedCall.first](auto value) {
+                                     [this, confId = hostedCall.first](const auto& value) {
                                          return value.at("id") == confId && value.at("uri") == userId_
                                                 && value.at("device") == deviceId_;
                                      });
-- 
GitLab