From: Daniel Axtens Date: Wed, 28 Jun 2017 07:48:43 +0000 (+1000) Subject: parser: fix charset 'guessing' algorithm X-Git-Tag: v2.0.0~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ed4f09613d97481c740f0c5983b2ac9f8136fd51;p=thirdparty%2Fpatchwork.git parser: fix charset 'guessing' algorithm The charset guessing algorithm doesn't work if it has to guess multiple charsets, as it overwrites the payload with None. Signed-off-by: Daniel Axtens Reviewed-by: Andrew Donnellan Reviewed-by: Stephen Finucane --- diff --git a/patchwork/parser.py b/patchwork/parser.py index b6c8047d..cfd77140 100644 --- a/patchwork/parser.py +++ b/patchwork/parser.py @@ -448,10 +448,11 @@ def _find_content(mail): for cset in try_charsets: try: - payload = six.text_type(payload, cset) + new_payload = six.text_type(payload, cset) break except UnicodeDecodeError: - payload = None + new_payload = None + payload = new_payload # Could not find a valid decoded payload. Fail. if payload is None: