diff options
author | Guido van Rossum <guido@python.org> | 2001-12-20 15:54:48 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2001-12-20 15:54:48 (GMT) |
commit | f830a529961b54d136aac71e1e499e6735627d99 (patch) | |
tree | 03e45272bb988d20cc0161c8c9eb0b7d4b1f1892 | |
parent | 54dc1d31ab097dcffab8b21a6c13eb0286fd52ce (diff) | |
download | cpython-f830a529961b54d136aac71e1e499e6735627d99.zip cpython-f830a529961b54d136aac71e1e499e6735627d99.tar.gz cpython-f830a529961b54d136aac71e1e499e6735627d99.tar.bz2 |
SF patch #495358 (Artur Zaprzala): rfc822.AddressList and "<>" address
rfc822.AddressList incorrectly handles empty address.
"<>" is converted to None and should be "".
AddressList.__str__() fails on None.
I got an email with such an address and my program
failed processing it.
Example:
>>> import rfc822
>>> rfc822.AddressList("<>").addresslist
[('', None)]
>>> str(rfc822.AddressList("<>"))
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.1/rfc822.py", line 753, in __str__
return ", ".join(map(dump_address_pair,
self.addresslist))
TypeError: sequence item 0: expected string, None found
[His solution: in the internal routine AddrlistClass.getrouteaddr(),
initialize adlist to "".]
-rw-r--r-- | Lib/rfc822.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Lib/rfc822.py b/Lib/rfc822.py index 9ad2f8f..96ab21c 100644 --- a/Lib/rfc822.py +++ b/Lib/rfc822.py @@ -624,7 +624,7 @@ class AddrlistClass: expectroute = 0 self.pos = self.pos + 1 self.gotonext() - adlist = None + adlist = "" while self.pos < len(self.field): if expectroute: self.getdomain() |