From: Senthil Kumaran Date: Sat, 20 Feb 2010 22:19:04 +0000 (+0000) Subject: Merged revisions 78268 via svnmerge from X-Git-Tag: v3.2a1~1672 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=734f05925ef57e34e13efd501a47556a98ea3085;p=python Merged revisions 78268 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk --- diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py index 02d08d4445..597678d0f8 100644 --- a/Lib/test/test_urllib.py +++ b/Lib/test/test_urllib.py @@ -112,7 +112,6 @@ class urlopen_FileTests(unittest.TestCase): for line in self.returned_obj.__iter__(): self.assertEqual(line, self.text) - class ProxyTests(unittest.TestCase): def setUp(self): @@ -866,6 +865,11 @@ class URLopener_Tests(unittest.TestCase): self.assertEqual(DummyURLopener().open( 'spam://example/ /'),'//example/%20/') + # test the safe characters are not quoted by urlopen + self.assertEqual(DummyURLopener().open( + "spam://c:|windows%/:=&?~#+!$,;'@()*[]|/path/"), + "//c:|windows%/:=&?~#+!$,;'@()*[]|/path/") + # Just commented them out. # Can't really tell why keep failing in windows and sparc. # Everywhere else they work ok, but on those machines, someteimes diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index 9332aa5dc0..07a7ee6960 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -1426,7 +1426,7 @@ class URLopener: def open(self, fullurl, data=None): """Use URLopener().open(file) instead of open(file, 'r').""" fullurl = unwrap(to_bytes(fullurl)) - fullurl = quote(fullurl, safe="%/:=&?~#+!$,;'@()*[]") + fullurl = quote(fullurl, safe="%/:=&?~#+!$,;'@()*[]|") if self.tempcache and fullurl in self.tempcache: filename, headers = self.tempcache[fullurl] fp = open(filename, 'rb')