summaryrefslogtreecommitdiff
path: root/b4/pr.py
diff options
context:
space:
mode:
authorKonstantin Ryabitsev <konstantin@linuxfoundation.org>2020-03-30 18:07:47 -0400
committerKonstantin Ryabitsev <konstantin@linuxfoundation.org>2020-03-30 18:07:47 -0400
commit7e035d16a7c6903b6f4ffa6cd41834367647ece6 (patch)
tree195d8905b609fefc700dd68f73ac7aefdf644161 /b4/pr.py
parente123952efd144401a198ab1f8337eb2529e26f95 (diff)
downloadb4-7e035d16a7c6903b6f4ffa6cd41834367647ece6.tar.gz
Decode headers into utf-8 from QP
Since we aren't planning on sending any of this as actual emails, convert EVERYTHING into utf-8 before writing messages, including QP-escaped 7-bit headers. Signed-off-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Diffstat (limited to 'b4/pr.py')
-rw-r--r--b4/pr.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/b4/pr.py b/b4/pr.py
index 0ed9277..e97dbce 100644
--- a/b4/pr.py
+++ b/b4/pr.py
@@ -13,7 +13,7 @@ import mailbox
from datetime import timedelta
from tempfile import mkstemp
-from email import utils, charset
+from email import utils, charset, header
charset.add_charset('utf-8', None)
@@ -241,7 +241,8 @@ def explode(gitdir, lmsg, savefile):
# Move the original From and Date into the body
prepend = list()
if msg['from'] != lmsg.msg['from']:
- prepend.append('From: %s' % msg['from'])
+ cleanfrom = b4.LoreMessage.clean_header(msg['from'])
+ prepend.append('From: %s' % ''.join(cleanfrom))
prepend.append('Date: %s' % msg['date'])
body = '%s\n\n%s' % ('\n'.join(prepend), msg.get_payload(decode=True).decode('utf-8'))
msg.set_payload(body)