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

................
  r80955 | senthil.kumaran | 2010-05-08 08:59:09 +0530 (Sat, 08 May 2010) | 9 lines

  Merged revisions 80953 via svnmerge from
  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 f0297a55370f9ff983135b61a04bb7400b17ac99..2da3befe65f636b58249bd1f7ca054fff769e054 100644 (file)
@@ -689,7 +689,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)
@@ -700,6 +700,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 002e3261f71e29db19eaa878465348d4d0a9edfe..6e892e43e0d1d6ecc88167d3b1dfb38ae470a7c6 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)