summaryrefslogtreecommitdiffstats
path: root/Lib/email
diff options
context:
space:
mode:
authorMariatta <Mariatta@users.noreply.github.com>2017-06-16 14:18:58 (GMT)
committerGitHub <noreply@github.com>2017-06-16 14:18:58 (GMT)
commite9f4d8db5f30a9603fa0c005382bff78aa1ce232 (patch)
tree9171eb65bcab595935ffdda267677a65b0224975 /Lib/email
parent2eca5b465f7404cc8484457b7966f828f434ec20 (diff)
downloadcpython-e9f4d8db5f30a9603fa0c005382bff78aa1ce232.zip
cpython-e9f4d8db5f30a9603fa0c005382bff78aa1ce232.tar.gz
cpython-e9f4d8db5f30a9603fa0c005382bff78aa1ce232.tar.bz2
[email] bpo-29478: Fix passing max_line_length=None from Compat32 policy (GH-595) (GH-2233)
If max_line_length=None is specified while using the Compat32 policy, it is no longer ignored.. (cherry picked from commit b459f7482612d340b88b62edc024628595ec6337)
Diffstat (limited to 'Lib/email')
-rw-r--r--Lib/email/_policybase.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/Lib/email/_policybase.py b/Lib/email/_policybase.py
index df46496..c9cbadd 100644
--- a/Lib/email/_policybase.py
+++ b/Lib/email/_policybase.py
@@ -361,8 +361,12 @@ class Compat32(Policy):
# Assume it is a Header-like object.
h = value
if h is not None:
- parts.append(h.encode(linesep=self.linesep,
- maxlinelen=self.max_line_length))
+ # The Header class interprets a value of None for maxlinelen as the
+ # default value of 78, as recommended by RFC 2822.
+ maxlinelen = 0
+ if self.max_line_length is not None:
+ maxlinelen = self.max_line_length
+ parts.append(h.encode(linesep=self.linesep, maxlinelen=maxlinelen))
parts.append(self.linesep)
return ''.join(parts)