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 f8e48ef..927d67e 100644
--- a/Lib/email/Utils.py
+++ b/Lib/email/Utils.py
@@ -20,7 +20,6 @@
 # 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 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]