From: Barry Warsaw Date: Mon, 15 Apr 2002 22:00:25 +0000 (+0000) Subject: parseaddr(): Don't use rfc822.parseaddr() because this now implies a X-Git-Tag: v2.3c1~5939 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=24fd0252c474bb1e4189dd6b92e572343f27f0f9;p=thirdparty%2FPython%2Fcpython.git parseaddr(): Don't use rfc822.parseaddr() because this now implies a double call to AddressList.getaddrlist(), and /that/ always returns an empty list for the second and subsequent calls. Instead, instantiate an AddressList directly, and get the parsed addresses out of the addresslist attribute. --- diff --git a/Lib/email/Utils.py b/Lib/email/Utils.py index f8e48ef4f949..927d67eccca2 100644 --- a/Lib/email/Utils.py +++ b/Lib/email/Utils.py @@ -20,7 +20,6 @@ from rfc822 import mktime_tz # We need wormarounds for bugs in these methods in older Pythons (see below) from rfc822 import parsedate as _parsedate from rfc822 import parsedate_tz as _parsedate_tz -from rfc822 import parseaddr as _parseaddr from quopri import decodestring as _qdecode import base64 @@ -237,7 +236,7 @@ def parsedate_tz(data): def parseaddr(addr): - realname, emailaddr = _parseaddr(addr) - if realname == '' and emailaddr is None: + addrs = _AddressList(addr).addresslist + if not addrs: return '', '' - return realname, emailaddr + return addrs[0]