diff options
| author | Alexandre Vassalotti <alexandre@peadrop.com> | 2008-05-03 04:39:38 +0000 |
|---|---|---|
| committer | Alexandre Vassalotti <alexandre@peadrop.com> | 2008-05-03 04:39:38 +0000 |
| commit | 5209857f8ef14876e03a3d7445bdad9b8de51faf (patch) | |
| tree | 8e0393d0d42d9334b17295b531cc70ea263a9dae /Lib/email | |
| parent | 8cb02b6000c66478406c12270a9f86e39fd20305 (diff) | |
| download | cpython-git-5209857f8ef14876e03a3d7445bdad9b8de51faf.tar.gz | |
Removed implicit convertions of str object to bytes from base64.
This also exposed some bugs in urlib2 and email.base64mime, which I
tried my best to fix. However, someone will probably have to double
check.
Diffstat (limited to 'Lib/email')
| -rw-r--r-- | Lib/email/base64mime.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Lib/email/base64mime.py b/Lib/email/base64mime.py index c60f8dbe25..6db007dc19 100644 --- a/Lib/email/base64mime.py +++ b/Lib/email/base64mime.py @@ -66,9 +66,10 @@ def header_encode(header_bytes, charset='iso-8859-1'): charset names the character set to use to encode the header. It defaults to iso-8859-1. Base64 encoding is defined in RFC 2045. """ - # Return empty headers unchanged if not header_bytes: - return str(header_bytes) + return "" + if isinstance(header_bytes, str): + header_bytes = header_bytes.encode(charset) encoded = b64encode(header_bytes).decode("ascii") return '=?%s?b?%s?=' % (charset, encoded) |
