From 78185ae641b3a1918f9d328c4372c7c8926ca956 Mon Sep 17 00:00:00 2001 From: jomae Date: Tue, 25 Jun 2024 11:12:00 +0000 Subject: [PATCH] 1.6.1dev: use `email.header.make_header` to decode MIME encoded header git-svn-id: http://trac.edgewall.org/intertrac/log:/branches/1.6-stable@17829 af82e41b-90c4-0310-8c96-b1721e28e2e2 --- trac/tests/notification.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/trac/tests/notification.py b/trac/tests/notification.py index 996d49def6..7a7328efc6 100644 --- a/trac/tests/notification.py +++ b/trac/tests/notification.py @@ -19,7 +19,10 @@ import re import threading import unittest -from email.header import decode_header as _email_decode_header +from email.header import ( + decode_header as _email_decode_header, + make_header as _email_make_header, +) try: from ._aiosmtpd import SMTPThreadedServer @@ -86,14 +89,7 @@ def strip_address(address): def decode_header(header): """ Decode a MIME-encoded header value """ - l = [] - for s, charset in _email_decode_header(header): - if charset: - s = str(s, charset) - elif isinstance(s, bytes): - s = str(s, 'utf-8') - l.append(s) - return ''.join(l) + return str(_email_make_header(_email_decode_header(header))) def parse_smtp_message(msg, decode=True):