deltachat-core-rust
deltachat-core-rust copied to clipboard
No read receipts for encrypted messages after manually overriding configured size limit of "Auto-Download Messages" in chat
-
Operating System (Linux/Mac/Windows/iOS/Android): Android 11.
-
Delta Chat Version: 1.26.2 (nightly build).
-
Expected behavior: Read messages are confirmed by read receipts (when enabled), even when the size of a message received exceeds the limit configured in "Auto-Download Messages" after downloaded manually.
-
Actual behavior: Read receipts are not sent back when a) the message is encrypted, and b) the message size is bigger than the configured limit in "Auto-Download Messages", and c) the message is confirmed to be downloaded manually in the respective chat.
-
Steps to reproduce the problem: -- Verify that "Read Receipts" is enabled. -- Configure "Auto-Download Messages" and set a certain message size limit. -- Receive an encrypted message of a bigger size than the limit you set before. (Note: It must be an encrypted message.) -- Confirm to download the message anyway. (Result: Delta Chat does not return a read receipt to the sender of this message.)
-
Screenshots: N/A.
-
Logs: N/A.
-
Remark: A read receipt is sent back when the message downloaded manually is an unencrypted one.
I cannot reproduce this issue with the latest nightly build on Android anymore, so I am closing here. :)
Unfortunately the issue has reoccured (for me in the very latest 1.36.2 nightly build), so reopening...
The issue still exists in version 1.42.0.
The reason of the bug reappearance is 5f00fc4e277b1802ce623da18770f50ba191def4 which removes updating msgs.state
to Seen
when a message is replaced by the fully downloaded one. But it's correct and there's even a test on this, test_download_later()
, -- a user maybe hasn't yet seen the downloaded message (downloading may take time), so the state mustn't be changed only because of the finished download. The message must be marked as seen later, by the same logic as usual messages, but this doesn't happen for some reason...
UPD: Afaiu, UIs must mark messages as seen calling message::markseen_msgs()
, so probably this is not a core lib issue. CC @r10s @link2xt
UPD: Also reproduced this with DC Desktop.
UPD: The mentioned commit isn't the reason of the bug reappearance because it's a very recent change. Still, the issue is likely in UIs.