From 15d3739446661b11e4caeb960a1903af5ba7e7dc Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Tue, 23 Jul 2002 04:29:54 +0000 Subject: make_header(): Watch out for charset is None, which decode_header() will return as the charset if implicit us-ascii is used. --- Lib/email/Header.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Lib/email/Header.py b/Lib/email/Header.py index 5ad2968..e691c3c 100644 --- a/Lib/email/Header.py +++ b/Lib/email/Header.py @@ -55,7 +55,6 @@ def decode_header(header): header = str(header) if not ecre.search(header): return [(header, None)] - decoded = [] dec = '' for line in header.splitlines(): @@ -63,7 +62,6 @@ def decode_header(header): if not ecre.search(line): decoded.append((line, None)) continue - parts = ecre.split(line) while parts: unenc = parts.pop(0).strip() @@ -108,7 +106,8 @@ def make_header(decoded_seq, maxlinelen=None, header_name=None, h = Header(maxlinelen=maxlinelen, header_name=header_name, continuation_ws=continuation_ws) for s, charset in decoded_seq: - if not isinstance(charset, Charset): + # None means us-ascii but we can simply pass it on to h.append() + if charset is not None and not isinstance(charset, Charset): charset = Charset(charset) h.append(s, charset) return h -- cgit v0.12