aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/room.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/room.cpp b/lib/room.cpp
index ea9915c3..d0ac10f9 100644
--- a/lib/room.cpp
+++ b/lib/room.cpp
@@ -1487,7 +1487,13 @@ RoomEventPtr Room::decryptMessage(const EncryptedEvent& encryptedEvent)
// qCWarning(E2EE) << "Encrypted message is empty";
return {};
}
- return encryptedEvent.createDecrypted(decrypted);
+ auto decryptedEvent = encryptedEvent.createDecrypted(decrypted);
+ if (decryptedEvent->roomId() == id()) {
+ return decryptedEvent;
+ } else {
+ qCWarning(E2EE) << "Decrypted event" << encryptedEvent.id() << "not for this room; discarding.";
+ return nullptr;
+ }
#endif // Quotient_E2EE_ENABLED
}