Commit 27ef9379 authored by R. David Murray's avatar R. David Murray

Issue #7472: ISO-2022 charsets now consistently use 7bit CTE.

Fixed a typo in the email.encoders module so that messages output using
an ISO-2022 character set will use a content-transfer-encoding of
7bit consistently.  Previously if the input data had any eight bit
characters the output data would get marked as 8bit even though it
was actually 7bit.
parent d10b65eb
...@@ -75,7 +75,7 @@ def encode_7or8bit(msg): ...@@ -75,7 +75,7 @@ def encode_7or8bit(msg):
# iso-2022-* is non-ASCII but still 7-bit # iso-2022-* is non-ASCII but still 7-bit
charset = msg.get_charset() charset = msg.get_charset()
output_cset = charset and charset.output_charset output_cset = charset and charset.output_charset
if output_cset and output_cset.lower().startswith('iso-2202-'): if output_cset and output_cset.lower().startswith('iso-2022-'):
msg['Content-Transfer-Encoding'] = '7bit' msg['Content-Transfer-Encoding'] = '7bit'
else: else:
msg['Content-Transfer-Encoding'] = '8bit' msg['Content-Transfer-Encoding'] = '8bit'
......
...@@ -15,6 +15,10 @@ Core and Builtins ...@@ -15,6 +15,10 @@ Core and Builtins
Library Library
------- -------
- Issue #7472: Fixed typo in email.encoders module; messages using ISO-2022
character sets will now consistently use a Content-Transfer-Encoding of
7bit rather than sometimes being marked as 8bit.
- Issue #8330: Fix expected output in test_gdb. - Issue #8330: Fix expected output in test_gdb.
- Issue #8374: Update the internal alias table in the :mod:`locale` module - Issue #8374: Update the internal alias table in the :mod:`locale` module
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment