diff options
author | R. David Murray <rdmurray@bitdance.com> | 2010-10-02 16:04:44 +0000 |
---|---|---|
committer | R. David Murray <rdmurray@bitdance.com> | 2010-10-02 16:04:44 +0000 |
commit | 7f8199a9979c9f100d754d4910d5e1bd6f929d9a (patch) | |
tree | 0800e3381257e6caf644f11312e6acc05e682039 /Lib/email/_parseaddr.py | |
parent | 996e13c838a9926087532755ea43b7ecba1ddb50 (diff) | |
download | cpython-git-7f8199a9979c9f100d754d4910d5e1bd6f929d9a.tar.gz |
Merged revisions 85179 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r85179 | r.david.murray | 2010-10-02 11:58:26 -0400 (Sat, 02 Oct 2010) | 6 lines
#1050268: make parseaddr 'quote' the contents of quoted strings in addresses.
Also made the doc string for email._parseaddr's 'quote' function more
accurate; I'd love to make the function match the old docstring instead,
but other code uses it according the existing semantics.
........
Diffstat (limited to 'Lib/email/_parseaddr.py')
-rw-r--r-- | Lib/email/_parseaddr.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/Lib/email/_parseaddr.py b/Lib/email/_parseaddr.py index ac2e524401..3bd4ba4403 100644 --- a/Lib/email/_parseaddr.py +++ b/Lib/email/_parseaddr.py @@ -160,7 +160,12 @@ def mktime_tz(data): def quote(str): - """Add quotes around a string.""" + """Prepare string to be used in a quoted string. + + Turns backslash and double quote characters into quoted pairs. These + are the only characters that need to be quoted inside a quoted string. + Does not add the surrounding double quotes. + """ return str.replace('\\', '\\\\').replace('"', '\\"') @@ -318,7 +323,7 @@ class AddrlistClass: aslist.append('.') self.pos += 1 elif self.field[self.pos] == '"': - aslist.append('"%s"' % self.getquote()) + aslist.append('"%s"' % quote(self.getquote())) elif self.field[self.pos] in self.atomends: break else: |