From b86b12f02f863cd59be22666de5dfc37443a940d Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 24 Apr 2025 18:08:54 +0200 Subject: [PATCH] Added workaround for invalid character encoding --- app/src/main/java/com/sun/mail/imap/IMAPBodyPart.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/com/sun/mail/imap/IMAPBodyPart.java b/app/src/main/java/com/sun/mail/imap/IMAPBodyPart.java index 9522f24f93..860a258e92 100644 --- a/app/src/main/java/com/sun/mail/imap/IMAPBodyPart.java +++ b/app/src/main/java/com/sun/mail/imap/IMAPBodyPart.java @@ -16,6 +16,8 @@ package com.sun.mail.imap; +import android.text.TextUtils; + import java.io.*; import java.util.Enumeration; @@ -148,6 +150,10 @@ public class IMAPBodyPart extends MimeBodyPart implements ReadableMime { String filename = null; if (bs.dParams != null) filename = bs.dParams.get("filename"); + // Workaround for invalid character encoding (server error) + if (filename != null && filename.contains("?????") && + bs.cParams != null && !TextUtils.isEmpty(bs.cParams.get("name"))) + filename = bs.cParams.get("name"); if ((filename == null || filename.isEmpty()) && bs.cParams != null) filename = bs.cParams.get("name"); if (decodeFileName && filename != null) {