From 5bd7d17234e1ea1df0598e03d8a9be00767c4b19 Mon Sep 17 00:00:00 2001 From: Julian Sparber Date: Tue, 17 May 2022 17:03:28 +0200 Subject: [PATCH] fix(matrix-sdk): room::Common:event() don't return decryption error --- crates/matrix-sdk/src/room/common.rs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/crates/matrix-sdk/src/room/common.rs b/crates/matrix-sdk/src/room/common.rs index f2f2393c8..5f6cbd2a5 100644 --- a/crates/matrix-sdk/src/room/common.rs +++ b/crates/matrix-sdk/src/room/common.rs @@ -478,12 +478,15 @@ impl Common { let event = self.client.send(request, None).await?.event; #[cfg(feature = "e2e-encryption")] - if let AnySyncRoomEvent::MessageLike(AnySyncMessageLikeEvent::RoomEncrypted( - SyncMessageLikeEvent::Original(encrypted_event), - )) = event.deserialize_as::()? { - Ok(self.decrypt_event(&encrypted_event).await?) - } else { + if let Ok(AnySyncRoomEvent::MessageLike(AnySyncMessageLikeEvent::RoomEncrypted( + SyncMessageLikeEvent::Original(encrypted_event), + ))) = event.deserialize_as::() + { + if let Ok(event) = self.decrypt_event(&encrypted_event).await { + return Ok(event); + } + } Ok(RoomEvent { event, encryption_info: None }) }