mirror of
https://github.com/chatmail/core.git
synced 2026-05-03 13:26:28 +03:00
fix: Don't receive message if a deletion request was received before (#8143)
There's no check for `from_id` so another group member can delete the message, but this can only happen in case of message reordering and the problem already exists for usual messages, so we may ignore it and overall a group represents a scope of trust. Co-authored-by: Hocuri <hocuri@gmx.de>
This commit is contained in:
@@ -5816,7 +5816,7 @@ async fn test_send_delete_request() -> Result<()> {
|
||||
let sent2 = alice.pop_sent_msg().await;
|
||||
assert_eq!(alice_chat.id.get_msg_cnt(alice).await?, E2EE_INFO_MSGS + 1);
|
||||
|
||||
// Bob receives both messages and has nothing the end
|
||||
// Bob receives both messages and has nothing at the end
|
||||
let bob_msg = bob.recv_msg(&sent1).await;
|
||||
assert_eq!(bob_msg.text, "wtf");
|
||||
assert_eq!(bob_msg.chat_id.get_msg_cnt(bob).await?, E2EE_INFO_MSGS + 2);
|
||||
@@ -5824,6 +5824,11 @@ async fn test_send_delete_request() -> Result<()> {
|
||||
bob.recv_msg_opt(&sent2).await;
|
||||
assert_eq!(bob_msg.chat_id.get_msg_cnt(bob).await?, E2EE_INFO_MSGS + 1);
|
||||
|
||||
// ... even if he receives messages in reverse order.
|
||||
let bob2 = &tcm.bob().await;
|
||||
bob2.recv_msg_opt(&sent2).await;
|
||||
assert!(bob2.recv_msg_opt(&sent1).await.is_none());
|
||||
|
||||
// Alice has another device, and there is also nothing at the end
|
||||
let alice2 = &tcm.alice().await;
|
||||
alice2.recv_msg(&sent0).await;
|
||||
|
||||
Reference in New Issue
Block a user