Workaround expunged messages without deleted flag

This commit is contained in:
M66B 2020-07-24 20:52:50 +02:00
parent 5a8ffce142
commit 22c3f06fb0
2 changed files with 57 additions and 0 deletions

View File

@ -1697,4 +1697,28 @@ public class IMAPMessage extends MimeMessage implements ReadableMime {
Session _getSession() {
return session;
}
@Override
public boolean isExpunged() {
if (super.isExpunged())
return true;
// Workaround expunged messages without deleted flag
if (size == 0 &&
receivedDate != null &&
receivedDate.getTime() == 0 &&
envelope != null &&
envelope.date == null &&
envelope.subject == null &&
envelope.from == null &&
envelope.sender == null &&
envelope.replyTo == null &&
envelope.to == null &&
envelope.cc == null &&
envelope.inReplyTo == null &&
envelope.messageId == null)
return true;
return false;
}
}

View File

@ -42,3 +42,36 @@ index 866f17737..929e82d33 100644
/**
* Set the user name to be used with the PROXYAUTH command.
* The PROXYAUTH user name can also be set using the
diff --git a/app/src/main/java/com/sun/mail/imap/IMAPMessage.java b/app/src/main/java/com/sun/mail/imap/IMAPMessage.java
index 453479d98..29433351f 100644
--- a/app/src/main/java/com/sun/mail/imap/IMAPMessage.java
+++ b/app/src/main/java/com/sun/mail/imap/IMAPMessage.java
@@ -1697,4 +1697,28 @@ public class IMAPMessage extends MimeMessage implements ReadableMime {
Session _getSession() {
return session;
}
+
+ @Override
+ public boolean isExpunged() {
+ if (super.isExpunged())
+ return true;
+
+ // Workaround expunged messages without deleted flag
+ if (size == 0 &&
+ receivedDate != null &&
+ receivedDate.getTime() == 0 &&
+ envelope != null &&
+ envelope.date == null &&
+ envelope.subject == null &&
+ envelope.from == null &&
+ envelope.sender == null &&
+ envelope.replyTo == null &&
+ envelope.to == null &&
+ envelope.cc == null &&
+ envelope.inReplyTo == null &&
+ envelope.messageId == null)
+ return true;
+
+ return false;
+ }
}