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 e7a10ba40b..08f9f9e0ea 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/MessageContentProcessor.java @@ -1641,6 +1641,10 @@ public final class MessageContentProcessor { Recipient threadRecipient = Objects.requireNonNull(SignalDatabase.threads().getRecipientForThreadId(story.getThreadId())); boolean groupStory = threadRecipient.isActiveGroup(); + if (!groupStory) { + threadRecipient = senderRecipient; + } + handlePossibleExpirationUpdate(content, message, threadRecipient.getGroupId(), senderRecipient, threadRecipient, receivedTime); if (message.getGroupContext().isPresent() ) { @@ -1935,7 +1939,7 @@ public final class MessageContentProcessor { } quoteModel = new QuoteModel(storyContext.getSentTimestamp(), storyAuthorRecipient, quoteBody, false, story.getSlideDeck().asAttachments(), Collections.emptyList(), QuoteModel.Type.NORMAL); - expiresInMillis = TimeUnit.SECONDS.toMillis(message.getExpirationStartTimestamp()); + expiresInMillis = TimeUnit.SECONDS.toMillis(message.getDataMessage().get().getExpiresInSeconds()); } else { warn(envelopeTimestamp, "Story has replies disabled. Dropping reply."); return -1L;