mail icon indicating copy to clipboard operation
mail copied to clipboard

Split long subject to avoid RFC2047 violation, but only when String#scan is aware of multibyte strings.

Open qnighy opened this issue 5 years ago • 2 comments

I've hit RFC2047 violation ("An 'encoded-word' may not be more than 75 characters long") when sending a mail with a long Japanese subject. This led to a corrupted subject in some mailers, at least in Windows 10 Mail in conjunction with GMail IMAP.

I found that in history of mail, there was a character boundary problem with splitting multibyte characters. Therefore, in this patch, it only tries to split encoded words when String#scan seems to be able to split multibyte strings appropriately.

It doesn't check the RFC2047 constraint directly, but I think in most cases the encoded words will be within 75 bytes.

qnighy avatar Nov 02 '18 06:11 qnighy

The failing tests seem unrelated to this PR. The current master also fails, at least in my local machine.

qnighy avatar Nov 02 '18 08:11 qnighy

Rebased.

qnighy avatar Jul 19 '19 10:07 qnighy