From 3663e63bc7c21069bc9cd0cd1efef2502f4b2eb9 Mon Sep 17 00:00:00 2001 From: Morgan Pretty Date: Thu, 24 Mar 2022 16:27:56 +1100 Subject: [PATCH] Swapped the Config message 'filter' to a 'compactMap' because apparently that doesn't crash --- .../ConfigurationMessage+Convenience.swift | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift b/SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift index 386c17ae7..da328bd28 100644 --- a/SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift +++ b/SessionMessagingKit/Messages/Control Messages/ConfigurationMessage+Convenience.swift @@ -52,10 +52,10 @@ extension ConfigurationMessage { let currentUserPublicKey: String = getUserHexEncodedPublicKey() contacts = storage.getAllContacts(with: transaction) - .filter { contact -> Bool in + .compactMap { contact -> ConfigurationMessage.Contact? in let threadID = TSContactThread.threadID(fromContactSessionID: contact.sessionID) - return ( + guard // Skip the current user contact.sessionID != currentUserPublicKey && // Contacts which have visible threads @@ -68,9 +68,10 @@ extension ConfigurationMessage { // Sync blocked contacts SSKEnvironment.shared.blockingManager.isRecipientIdBlocked(contact.sessionID) ) - ) - } - .map { contact -> ConfigurationMessage.Contact in + else { + return nil + } + // Can just default the 'hasX' values to true as they will be set to this // when converting to proto anyway let profilePictureURL = contact.profilePictureURL