summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2012-10-11 21:09:12 +0200
committerClaude Paroz <claude@2xlibre.net>2012-10-11 21:40:14 +0200
commit501d793398c3ecc3c8a54475d07609cf34643553 (patch)
tree3e567d6276c2c172f1e38712b6dcb1d20df658bc
parent0614e99fbdb9d14a57035da320a4fc7aca232469 (diff)
Fixed #19107 -- Workarounded message-encoding bug on Python < 2.6.6
Thanks Bernardo Pires for the report.
-rw-r--r--django/core/mail/message.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/django/core/mail/message.py b/django/core/mail/message.py
index db9023a0bb..98ab3c9075 100644
--- a/django/core/mail/message.py
+++ b/django/core/mail/message.py
@@ -3,6 +3,7 @@ from __future__ import unicode_literals
import mimetypes
import os
import random
+import sys
import time
from email import charset as Charset, encoders as Encoders
from email.generator import Generator
@@ -138,6 +139,9 @@ class SafeMIMEText(MIMEText):
"""
fp = six.StringIO()
g = Generator(fp, mangle_from_ = False)
+ if sys.version_info < (2, 6, 6) and isinstance(self._payload, six.text_type):
+ # Workaround for http://bugs.python.org/issue1368247
+ self._payload = self._payload.encode(self._charset.output_charset)
g.flatten(self, unixfrom=unixfrom)
return fp.getvalue()