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.
........
diff --git a/Lib/email/_parseaddr.py b/Lib/email/_parseaddr.py
index ac2e524..3bd4ba4 100644
--- a/Lib/email/_parseaddr.py
+++ b/Lib/email/_parseaddr.py
@@ -160,7 +160,12 @@
 
 
 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 @@
                 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: