Incorrect decode UTF-8 encoded mail address#50
Conversation
bug occurs when I load Message from ".eml" file, that has been created some other program, and it has the MailAddress encoded in UTF-8, for example: I got decoded value "Лучшему кл��енту <jane@contoso.com>" instead of "Лучшему клиенту <jane@contoso.com>" you can test old version with headers: X-Sender: =?utf-8?Q?=D0=A3=D0=B2=D0=B0=D0=B6=D0=B0=D0=B5=D0=BC=D1=8B=D0?= =?utf-8?Q?=B9_=D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D1=89=D0=B8=D0=BA?= <ben@contoso.com> X-Receiver: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=BA?= =?utf-8?Q?=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D1=83?= <jane@contoso.com> X-Receiver: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=B4?= =?utf-8?Q?=D1=80=D1=83=D0=B3=D1=83_=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0?= =?utf-8?Q?=B3=D0=BE_=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D0=B0?= <alex@contoso.com> MIME-Version: 1.0 From: =?utf-8?Q?=D0=A3=D0=B2=D0=B0=D0=B6=D0=B0=D0=B5=D0=BC=D1=8B=D0=B9?= =?utf-8?Q?_=D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D1=89=D0=B8=D0=BA?= <ben@contoso.com> To: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=BA=D0=BB=D0?= =?utf-8?Q?=B8=D0=B5=D0=BD=D1=82=D1=83?= <jane@contoso.com>, =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=B4=D1=80=D1?= =?utf-8?Q?=83=D0=B3=D1=83_=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=B3=D0=BE?= =?utf-8?Q?_=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D0=B0?= <alex@contoso.com>
|
Hello and thank you for your pull request. Is it possible that you could change the indentation to tabs and add a test case such that that this bug will not be reintroduced again? Then I would merge the pull request. |
|
No, I do not change any thing. I just do so: message.Body = "Using this new feature, you can send an e-mail message from an application very easily."; And then I try to load message: |
|
This patch is broken. The patch assumes that each encoded word token uses the exact same encoding and charset values, but neither are guaranteed to be the case. |
bug occurs when I load Message from ".eml" file, that has been created some other program,
and it has the MailAddress encoded in UTF-8,
for example:
I got decoded value "Лучшему кл��енту jane@contoso.com"
instead of "Лучшему клиенту jane@contoso.com"
you can test old version with headers:
X-Sender: =?utf-8?Q?=D0=A3=D0=B2=D0=B0=D0=B6=D0=B0=D0=B5=D0=BC=D1=8B=D0?=
=?utf-8?Q?=B9_=D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D1=89=D0=B8=D0=BA?=
ben@contoso.com
X-Receiver: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=BA?=
=?utf-8?Q?=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D1=83?= jane@contoso.com
X-Receiver: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=B4?=
=?utf-8?Q?=D1=80=D1=83=D0=B3=D1=83_=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0?=
=?utf-8?Q?=B3=D0=BE_=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D0=B0?=
alex@contoso.com
MIME-Version: 1.0
From: =?utf-8?Q?=D0=A3=D0=B2=D0=B0=D0=B6=D0=B0=D0=B5=D0=BC=D1=8B=D0=B9?=
=?utf-8?Q?=D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D1=89=D0=B8=D0=BA?=
ben@contoso.com
To: =?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83=D0=BA=D0=BB=D0?=
=?utf-8?Q?=B8=D0=B5=D0=BD=D1=82=D1=83?= jane@contoso.com,
=?utf-8?Q?=D0=9B=D1=83=D1=87=D1=88=D0=B5=D0=BC=D1=83_=D0=B4=D1=80=D1?=
=?utf-8?Q?=83=D0=B3=D1=83_=D0=BB=D1=83=D1=87=D1=88=D0=B5=D0=B3=D0=BE?=
=?utf-8?Q?_=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82=D0=B0?= alex@contoso.com