From 2b15fc29660777495c8c77f5311967d4900df539 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Wed, 30 Mar 2022 09:47:06 -0300 Subject: [PATCH] Do not drop group stories if not profile sharing with sender. --- .../securesms/messages/MessageContentProcessor.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java index dee5a8c241..7126d4fd21 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java @@ -367,7 +367,7 @@ public final class MessageContentProcessor { } else if (content.getTypingMessage().isPresent()) { handleTypingMessage(content, content.getTypingMessage().get(), senderRecipient); } else if (content.getStoryMessage().isPresent()) { - handleStoryMessage(content, content.getStoryMessage().get(), senderRecipient); + handleStoryMessage(content, content.getStoryMessage().get(), senderRecipient, threadRecipient); } else if (content.getDecryptionErrorMessage().isPresent()) { handleRetryReceipt(content, content.getDecryptionErrorMessage().get(), senderRecipient); } else if (content.getSenderKeyDistributionMessage().isPresent()) { @@ -1346,7 +1346,7 @@ public final class MessageContentProcessor { messageNotifier.updateNotification(context); } - private void handleStoryMessage(@NonNull SignalServiceContent content, @NonNull SignalServiceStoryMessage message, @NonNull Recipient senderRecipient) throws StorageFailedException { + private void handleStoryMessage(@NonNull SignalServiceContent content, @NonNull SignalServiceStoryMessage message, @NonNull Recipient senderRecipient, @NonNull Recipient threadRecipient) throws StorageFailedException { log(content.getTimestamp(), "Story message."); if (!Stories.isFeatureAvailable()) { @@ -1354,8 +1354,8 @@ public final class MessageContentProcessor { return; } - if (!(senderRecipient.isProfileSharing() || senderRecipient.isSystemContact())) { - warn(content.getTimestamp(), "Dropping story from an untrusted user."); + if (!threadRecipient.isGroup() && !(senderRecipient.isProfileSharing() || senderRecipient.isSystemContact())) { + warn(content.getTimestamp(), "Dropping non-group story from an untrusted user."); return; }