mirror of
https://github.com/chatmail/core.git
synced 2026-05-02 04:46:29 +03:00
Do not send read receipts for system messages
This commit is contained in:
11
src/job.rs
11
src/job.rs
@@ -671,7 +671,18 @@ impl Job {
|
|||||||
// we want to send out an MDN anyway
|
// we want to send out an MDN anyway
|
||||||
// The job will not be retried so locally
|
// The job will not be retried so locally
|
||||||
// there is no risk of double-sending MDNs.
|
// there is no risk of double-sending MDNs.
|
||||||
|
//
|
||||||
|
// Read receipts for system messages are never
|
||||||
|
// sent. These messages have no place to display
|
||||||
|
// received read receipt anyway. And since their text
|
||||||
|
// is locally generated, quoting them is dangerous as
|
||||||
|
// it may contain contact names. E.g., for original
|
||||||
|
// message "Group left by me", a read receipt will
|
||||||
|
// quote "Group left by <name>", and the name can be a
|
||||||
|
// display name stored in address book rather than
|
||||||
|
// the name sent in the From field by the user.
|
||||||
if msg.param.get_bool(Param::WantsMdn).unwrap_or_default()
|
if msg.param.get_bool(Param::WantsMdn).unwrap_or_default()
|
||||||
|
&& !msg.is_system_message()
|
||||||
&& context.get_config_bool(Config::MdnsEnabled).await
|
&& context.get_config_bool(Config::MdnsEnabled).await
|
||||||
{
|
{
|
||||||
if let Err(err) = send_mdn(context, &msg).await {
|
if let Err(err) = send_mdn(context, &msg).await {
|
||||||
|
|||||||
@@ -600,6 +600,11 @@ impl Message {
|
|||||||
|| cmd != SystemMessage::Unknown && cmd != SystemMessage::AutocryptSetupMessage
|
|| cmd != SystemMessage::Unknown && cmd != SystemMessage::AutocryptSetupMessage
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn is_system_message(&self) -> bool {
|
||||||
|
let cmd = self.param.get_cmd();
|
||||||
|
cmd != SystemMessage::Unknown
|
||||||
|
}
|
||||||
|
|
||||||
/// Whether the message is still being created.
|
/// Whether the message is still being created.
|
||||||
///
|
///
|
||||||
/// Messages with attachments might be created before the
|
/// Messages with attachments might be created before the
|
||||||
|
|||||||
@@ -113,12 +113,7 @@ impl<'a, 'b> MimeFactory<'a, 'b> {
|
|||||||
)
|
)
|
||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
let command = msg.param.get_cmd();
|
if !msg.is_system_message() && context.get_config_bool(Config::MdnsEnabled).await {
|
||||||
|
|
||||||
if command != SystemMessage::AutocryptSetupMessage
|
|
||||||
&& command != SystemMessage::SecurejoinMessage
|
|
||||||
&& context.get_config_bool(Config::MdnsEnabled).await
|
|
||||||
{
|
|
||||||
req_mdn = true;
|
req_mdn = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user