aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Bremner <david@tethera.net>2023-09-16 11:15:46 -0300
committerDavid Bremner <david@tethera.net>2023-09-16 11:15:46 -0300
commit12aa05f07cb8aae736895c46fb25e0106daf207c (patch)
treeaf89b6829e671813c1b64a1c4a81969b34efd74f
parent32bef335658763b5e9d887db3ac22bb3c1b76d9e (diff)
devel/nmweb: read mail files in binary mode.
"ju" reported on IRC that browsing https://nmbug.notmuchmail.org/nmweb/show/20160719094205.qmf5sjnja6crt5t3%40gotlib crashed. The underlying issue is that python3 defaults to utf8 decoding files unless they are opened in binary mode. The file in question (in the nmbug archive; it depends a bit on the routing the message took) has Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit and some of it is not valid utf8.
-rwxr-xr-xdevel/notmuch-web/nmweb.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/devel/notmuch-web/nmweb.py b/devel/notmuch-web/nmweb.py
index b0d4d5cd..e0e87b49 100755
--- a/devel/notmuch-web/nmweb.py
+++ b/devel/notmuch-web/nmweb.py
@@ -207,7 +207,7 @@ env.globals['thread_nav'] = thread_nav
def format_message(nm_msg, mid):
fn = list(nm_msg.filenames())[0]
- msg = MaildirMessage(open(fn))
+ msg = MaildirMessage(open(fn, 'rb'))
return format_message_walk(msg, mid)
def decodeAnyway(txt, charset='ascii'):