From d121f9402bed89a358c9416e293c5e8d5cfab12a Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 8 Apr 2026 21:55:53 +0000 Subject: [PATCH] Improve quote validation. --- .../thoughtcrime/securesms/messages/DataMessageProcessor.kt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/DataMessageProcessor.kt b/app/src/main/java/org/thoughtcrime/securesms/messages/DataMessageProcessor.kt index 259af11fe3..a1af899f76 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/DataMessageProcessor.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/DataMessageProcessor.kt @@ -1600,6 +1600,12 @@ object DataMessageProcessor { } private fun isSenderValid(quotedMessage: MmsMessageRecord, timestamp: Long, senderRecipient: Recipient, threadRecipient: Recipient): Boolean { + val destinationThreadId = SignalDatabase.threads.getThreadIdIfExistsFor(threadRecipient.id) + if (quotedMessage.threadId != destinationThreadId) { + warn(timestamp, "Quoted message is in a different thread! QuotedThread: ${quotedMessage.threadId} DestinationThread: $destinationThreadId") + return false + } + if (threadRecipient.isGroup) { val groupRecord = SignalDatabase.groups.getGroup(threadRecipient.id).orNull() if (groupRecord != null && !groupRecord.members.contains(senderRecipient.id)) {