diff --git a/SignalServiceKit/src/Protocols/ProtoBuf+OWS.m b/SignalServiceKit/src/Protocols/ProtoBuf+OWS.m index 98d91db72..0f6a8e500 100644 --- a/SignalServiceKit/src/Protocols/ProtoBuf+OWS.m +++ b/SignalServiceKit/src/Protocols/ProtoBuf+OWS.m @@ -55,7 +55,10 @@ NS_ASSUME_NONNULL_BEGIN // Once we've shared our profile key with a user (perhaps due to being // a member of a whitelisted group), make sure they're whitelisted. id profileManager = [TextSecureKitEnv sharedEnv].profileManager; - [profileManager addUserToProfileWhitelist:recipientId]; + // FIXME PERF avoid this dispatch. It's going to happen for *each* recipient in a group message. + dispatch_async(dispatch_get_main_queue(), ^{ + [profileManager addUserToProfileWhitelist:recipientId]; + }); } } }