From f86829daea2ea1e9aea436dfa963fe243684803a Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 24 Aug 2023 13:10:00 +0200 Subject: [PATCH] Fixed missing Content-Type POP3/TOP --- app/src/main/java/com/sun/mail/pop3/POP3Message.java | 6 ++++++ app/src/main/java/eu/faircode/email/EmailService.java | 2 +- .../main/java/eu/faircode/email/FragmentOptionsMisc.java | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/sun/mail/pop3/POP3Message.java b/app/src/main/java/com/sun/mail/pop3/POP3Message.java index 7bc9c9fabe..055c7bbbe3 100644 --- a/app/src/main/java/com/sun/mail/pop3/POP3Message.java +++ b/app/src/main/java/com/sun/mail/pop3/POP3Message.java @@ -612,6 +612,12 @@ public class POP3Message extends MimeMessage implements ReadableMime { } finally { hdrs.close(); } + // Some servers truncate the headers + if (headers.getHeader("Content-Type", null) == null) { + hdrSize = -1; + headers = null; + fetchContent = true; + } } } diff --git a/app/src/main/java/eu/faircode/email/EmailService.java b/app/src/main/java/eu/faircode/email/EmailService.java index 3154e2a65b..5741ed6de1 100644 --- a/app/src/main/java/eu/faircode/email/EmailService.java +++ b/app/src/main/java/eu/faircode/email/EmailService.java @@ -195,7 +195,7 @@ public class EmailService implements AutoCloseable { boolean auth_sasl = prefs.getBoolean("auth_sasl", true); boolean auth_apop = prefs.getBoolean("auth_apop", false); boolean use_top = prefs.getBoolean("use_top", true); - boolean forget_top = prefs.getBoolean("forget_top", true); + boolean forget_top = prefs.getBoolean("forget_top", false); Log.i("Authenticate" + " plain=" + auth_plain + " login=" + auth_login + diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java index c101500a97..f714ad9df6 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsMisc.java @@ -2616,7 +2616,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc swAuthSasl.setChecked(prefs.getBoolean("auth_sasl", true)); swAuthApop.setChecked(prefs.getBoolean("auth_apop", false)); swUseTop.setChecked(prefs.getBoolean("use_top", true)); - swForgetTop.setChecked(prefs.getBoolean("forget_top", true)); + swForgetTop.setChecked(prefs.getBoolean("forget_top", false)); swKeepAlivePoll.setChecked(prefs.getBoolean("keep_alive_poll", false)); swEmptyPool.setChecked(prefs.getBoolean("empty_pool", true)); swIdleDone.setChecked(prefs.getBoolean("idle_done", true));