Kaydet (Commit) d8b7770a authored tarafından Berker Peksag's avatar Berker Peksag

Issue #27445: Merge from 3.5

...@@ -35,10 +35,8 @@ class MIMEText(MIMENonMultipart): ...@@ -35,10 +35,8 @@ class MIMEText(MIMENonMultipart):
_charset = 'us-ascii' _charset = 'us-ascii'
except UnicodeEncodeError: except UnicodeEncodeError:
_charset = 'utf-8' _charset = 'utf-8'
if isinstance(_charset, Charset):
_charset = str(_charset)
MIMENonMultipart.__init__(self, 'text', _subtype, policy=policy, MIMENonMultipart.__init__(self, 'text', _subtype, policy=policy,
**{'charset': _charset}) **{'charset': str(_charset)})
self.set_payload(_text, _charset) self.set_payload(_text, _charset)
...@@ -1653,9 +1653,12 @@ class TestMIMEText(unittest.TestCase): ...@@ -1653,9 +1653,12 @@ class TestMIMEText(unittest.TestCase):
eq(msg.get_charset().input_charset, 'us-ascii') eq(msg.get_charset().input_charset, 'us-ascii')
eq(msg['content-type'], 'text/plain; charset="us-ascii"') eq(msg['content-type'], 'text/plain; charset="us-ascii"')
# Also accept a Charset instance # Also accept a Charset instance
msg = MIMEText('hello there', _charset=Charset('utf-8')) charset = Charset('utf-8')
charset.body_encoding = None
msg = MIMEText('hello there', _charset=charset)
eq(msg.get_charset().input_charset, 'utf-8') eq(msg.get_charset().input_charset, 'utf-8')
eq(msg['content-type'], 'text/plain; charset="utf-8"') eq(msg['content-type'], 'text/plain; charset="utf-8"')
eq(msg.get_payload(), 'hello there')
def test_7bit_input(self): def test_7bit_input(self):
eq = self.assertEqual eq = self.assertEqual
......
...@@ -92,6 +92,9 @@ Core and Builtins ...@@ -92,6 +92,9 @@ Core and Builtins
Library Library
------- -------
- Issue #27445: Don't pass str(_charset) to MIMEText.set_payload().
Patch by Claude Paroz.
- Issue #24277: The new email API is no longer provisional, and the docs - Issue #24277: The new email API is no longer provisional, and the docs
have been reorganized and rewritten to emphasize the new API. have been reorganized and rewritten to emphasize the new API.
......
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