Kaydet (Commit) 184d55a8 authored tarafından Barry Warsaw's avatar Barry Warsaw

rfc822.unquote() doesn't properly de-backslash-ify in Python prior to

2.3.  This patch (adapted from Quinn Dunkan's SF patch #573204) fixes
the problem and should get ported to rfc822.py.
üst 93ad6a7a
......@@ -13,7 +13,7 @@ import warnings
from cStringIO import StringIO
from types import ListType
from rfc822 import unquote, quote
from rfc822 import quote
from rfc822 import AddressList as _AddressList
from rfc822 import mktime_tz
......@@ -260,6 +260,17 @@ def parseaddr(addr):
return addrs[0]
# rfc822.unquote() doesn't properly de-backslash-ify in Python pre-2.3.
def unquote(str):
"""Remove quotes from a string."""
if len(str) > 1:
if str.startswith('"') and str.endswith('"'):
return str[1:-1].replace('\\\\', '\\').replace('\\"', '"')
if str.startswith('<') and str.endswith('>'):
return str[1:-1]
return str
# RFC2231-related functions - parameter encoding and decoding
def decode_rfc2231(s):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment