mirror of https://github.com/M66B/FairEmail.git
Improved header encoding fixing
This commit is contained in:
parent
4d82a6c751
commit
b52c3171c4
|
@ -1207,13 +1207,17 @@ public class MessageHelper {
|
|||
if (header.trim().startsWith("=?"))
|
||||
return header;
|
||||
|
||||
if (CharsetHelper.isUTF8(header)) {
|
||||
Log.i("Converting " + name + " to UTF-8");
|
||||
return new String(header.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8);
|
||||
} else {
|
||||
Log.i("Converting " + name + " to ISO8859-1");
|
||||
return new String(header.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.ISO_8859_1);
|
||||
}
|
||||
Charset detected = CharsetHelper.detect(header);
|
||||
if (detected == null && CharsetHelper.isUTF8(header))
|
||||
detected = StandardCharsets.UTF_8;
|
||||
if (detected == null ||
|
||||
CHARSET16.contains(detected) ||
|
||||
StandardCharsets.US_ASCII.equals(detected) ||
|
||||
StandardCharsets.ISO_8859_1.equals(detected))
|
||||
return header;
|
||||
|
||||
Log.i("Converting " + name + " to " + detected);
|
||||
return new String(header.getBytes(StandardCharsets.ISO_8859_1), detected);
|
||||
}
|
||||
|
||||
private Address[] getAddressHeader(String name) throws MessagingException {
|
||||
|
|
Loading…
Reference in New Issue