New submission from Enrico Zini <enr...@enricozini.org>:
This simple code: ``` import mailbox mbox = mailbox.mbox("broken.mbox") for msg in mbox: msg.get_payload() ``` Fails rather unexpectedly: ``` $ python3 broken.py Traceback (most recent call last): File "broken.py", line 5, in <module> msg.get_payload() File "/usr/lib/python3.7/email/message.py", line 267, in get_payload payload = bpayload.decode(self.get_param('charset', 'ascii'), 'replace') TypeError: decode() argument 1 must be str, not tuple ``` (I'm attaching a zip with code and mailbox) I would have expected either that the part past text/plain is ignored if it doesn't make sense, or that content-type is completely ignored. I have to process a large mailbox archive, and this is currently how I had to work around this issue, and it's causing me to have to skip email content which would otherwise be reasonably accessible: https://salsa.debian.org/nm-team/echelon/commit/617ce935a31f6256257ffb24e11a5666306406c3 ---------- files: broken.zip messages: 337091 nosy: enrico priority: normal severity: normal status: open title: mboxMessage.get_payload throws TypeError on malformed content type Added file: https://bugs.python.org/file48184/broken.zip _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue36180> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com