]> granicus.if.org Git - python/commitdiff
Merged revisions 80953 via svnmerge from
authorSenthil Kumaran <orsenthil@gmail.com>
Sat, 8 May 2010 03:29:09 +0000 (03:29 +0000)
committerSenthil Kumaran <orsenthil@gmail.com>
Sat, 8 May 2010 03:29:09 +0000 (03:29 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80953 | senthil.kumaran | 2010-05-08 08:41:50 +0530 (Sat, 08 May 2010) | 3 lines

  Fix Issue8656 - urllib2 mangles file://-scheme URLs
........

Lib/test/test_urllib2.py
Lib/urllib/request.py

index 1a8ffac1b03df4b5f17f170cc145f58455595fa6..f173aa09dc63e08b0dcc4878037c9319907fb7e2 100644 (file)
@@ -684,7 +684,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)
@@ -695,6 +695,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 3293966a1981407f706350c067cfa4641e32d89c..098630ebcbb19fa61df0bb9440971d869784bb76 100644 (file)
@@ -1216,7 +1216,8 @@ class FileHandler(BaseHandler):
                 host, port = splitport(host)
             if not host or \
                 (not port and _safe_gethostbyname(host) in self.get_names()):
-                return addinfourl(open(localfile, 'rb'), headers, 'file:'+file)
+                return addinfourl(open(localfile, 'rb'), headers, 'file://'+
+                        host + file)
         except OSError as msg:
             # users shouldn't expect OSErrors coming from urlopen()
             raise URLError(msg)