From 6c2d21125ec6f29ed469095fe252ca5312c1b970 Mon Sep 17 00:00:00 2001 From: Alan Evans Date: Tue, 9 Feb 2021 15:15:34 -0400 Subject: [PATCH] Fix missing UUID crash, get group recipients direct from V2 group record. --- .../thoughtcrime/securesms/groups/GroupManagerV2.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/GroupManagerV2.java b/app/src/main/java/org/thoughtcrime/securesms/groups/GroupManagerV2.java index 43adc87fb7..8e9cc9006e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/GroupManagerV2.java +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/GroupManagerV2.java @@ -132,10 +132,11 @@ final class GroupManagerV2 { @WorkerThread @NonNull Map getUuidCipherTexts(@NonNull GroupId.V2 groupId) { - GroupDatabase.GroupRecord groupRecord = DatabaseFactory.getGroupDatabase(context).requireGroup(groupId); - GroupMasterKey groupMasterKey = groupRecord.requireV2GroupProperties().getGroupMasterKey(); - ClientZkGroupCipher clientZkGroupCipher = new ClientZkGroupCipher(GroupSecretParams.deriveFromMasterKey(groupMasterKey)); - List recipients = Recipient.resolvedList(groupRecord.getMembers()); + GroupDatabase.GroupRecord groupRecord = DatabaseFactory.getGroupDatabase(context).requireGroup(groupId); + GroupDatabase.V2GroupProperties v2GroupProperties = groupRecord.requireV2GroupProperties(); + GroupMasterKey groupMasterKey = v2GroupProperties.getGroupMasterKey(); + ClientZkGroupCipher clientZkGroupCipher = new ClientZkGroupCipher(GroupSecretParams.deriveFromMasterKey(groupMasterKey)); + List recipients = v2GroupProperties.getMemberRecipients(GroupDatabase.MemberSet.FULL_MEMBERS_INCLUDING_SELF); Map uuidCipherTexts = new HashMap<>(); for (Recipient recipient : recipients) {