From 6b7a7d24effe6c670e7c4dd594912bc5e3f10fcb Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Sun, 6 Oct 2002 03:37:00 +0000 Subject: Backport 1.60 and 1.62: Patch #586999: Fix multiline string in sendmail example. smptlib did not handle empty addresses. The problem was that it expected rfc822.parseaddr() to return None upon a parse failure. The actual, documented return value for a parse failure is (None, None). Closes SF bug 602029. --- Lib/smtplib.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Lib/smtplib.py b/Lib/smtplib.py index a546475..0ace9ad 100755 --- a/Lib/smtplib.py +++ b/Lib/smtplib.py @@ -166,14 +166,14 @@ def quoteaddr(addr): Should be able to handle anything rfc822.parseaddr can handle. """ - m=None + m = (None, None) try: m=rfc822.parseaddr(addr)[1] except AttributeError: pass - if not m: + if m == (None, None): # Indicates parse failure or AttributeError #something weird here.. punt -ddm - return addr + return "<%s>" % addr else: return "<%s>" % m @@ -604,7 +604,7 @@ class SMTP: >>> import smtplib >>> s=smtplib.SMTP("localhost") >>> tolist=["one@one.org","two@two.org","three@three.org","four@four.org"] - >>> msg = ''' + >>> msg = '''\\ ... From: Me@my.org ... Subject: testin'... ... -- cgit v0.12