From 9399da6badf1e5467da529ed429d48535d5263ee Mon Sep 17 00:00:00 2001 From: Brice-W Date: Thu, 6 May 2021 14:49:28 +1000 Subject: [PATCH] handle the case when an added member is a zombie --- .../messaging/sending_receiving/ReceivedMessageHandler.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt b/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt index 2a0b13ae3e..8b0588364f 100644 --- a/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt +++ b/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/ReceivedMessageHandler.kt @@ -395,6 +395,11 @@ private fun MessageReceiver.handleClosedGroupMembersAdded(message: ClosedGroupCo val newMembers = members + updateMembers storage.updateMembers(groupID, newMembers.map { Address.fromSerialized(it) }) + // update zombie members in case the added members are zombies + val zombies = storage.getZombieMember(groupID) + if (zombies.intersect(updateMembers).isNotEmpty()) + storage.updateZombieMembers(groupID, zombies.minus(updateMembers).map { Address.fromSerialized(it) }) + // Notify the user if (userPublicKey == senderPublicKey) { // sender is a linked device