mail
mail copied to clipboard
fix: inconsistent encoding in saved sent messages
Upstream fix at https://github.com/bytestream/Mime/pull/7 or https://github.com/bytestream/Mime/pull/8 (both were tested locally)
TL;DR: Sent email bodies are saved as 7bit quoted-printable but the headers say 8bit.
I switched to the streamed implementation of getRaw() for now. The streamed implementation is also broken but a bit less broken as it defaults to 8bit. I did some bisecting and we used stream=true before https://github.com/nextcloud/mail/pull/9364 but now we use stream=false because the string is cached in the db (outbox table).
How to reproduce?
- Send some mail with complex UTF-8 chars, e.g.
‘or nbsp. - Wait for it be sent.
- Have a look at the sent mail in your sent mailbox.
- Observe weird chars because the mail has inconsistent encoding (headers vs. body).
Screenshots
| Before | After |
|---|---|
/backport to stable3.7
/backport to stable3.6