]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Fix Issue8656 - urllib2 mangles file://-scheme URLs
authorSenthil Kumaran <orsenthil@gmail.com>
Sat, 8 May 2010 03:11:50 +0000 (03:11 +0000)
committerSenthil Kumaran <orsenthil@gmail.com>
Sat, 8 May 2010 03:11:50 +0000 (03:11 +0000)
Lib/test/test_urllib2.py
Lib/urllib2.py

index 01a06fb8561c416a1c225d0d436bf298060003d5..9364b3d7c4cab18b092db2956f5c56b3d3531f11 100644 (file)
@@ -679,7 +679,7 @@ class HandlerTests(unittest.TestCase):
                 try:
                     data = r.read()
                     headers = r.info()
-                    newurl = r.geturl()
+                    respurl = r.geturl()
                 finally:
                     r.close()
                 stats = os.stat(TESTFN)
@@ -690,6 +690,7 @@ class HandlerTests(unittest.TestCase):
             self.assertEqual(headers["Content-type"], "text/plain")
             self.assertEqual(headers["Content-length"], "13")
             self.assertEqual(headers["Last-modified"], modified)
+            self.assertEqual(respurl, url)
 
         for url in [
             "file://localhost:80%s" % urlpath,
index 122f777ce4a393e12d521ce7b846eb1c78229127..84f78333e997b981641f0a7fd198f679b1471eab 100644 (file)
@@ -1291,7 +1291,7 @@ class FileHandler(BaseHandler):
             if not host or \
                 (not port and socket.gethostbyname(host) in self.get_names()):
                 return addinfourl(open(localfile, 'rb'),
-                                  headers, 'file:'+file)
+                                  headers, 'file://'+ host + file)
         except OSError, msg:
             # urllib2 users shouldn't expect OSErrors coming from urlopen()
             raise URLError(msg)