--- a/mercurial/hg.py Wed Jun 15 19:52:41 2005 -0800
+++ b/mercurial/hg.py Wed Jun 15 19:58:48 2005 -0800
@@ -9,7 +9,7 @@
from revlog import *
from demandload import *
demandload(globals(), "re lock urllib urllib2 transaction time socket")
-demandload(globals(), "tempfile byterange difflib")
+demandload(globals(), "tempfile httprangereader difflib")
def is_exec(f):
return (os.stat(f).st_mode & 0100 != 0)
@@ -321,7 +321,7 @@
def o(path, mode="r"):
if p[:7] == "http://":
f = os.path.join(p, urllib.quote(path))
- return httprangereader(f)
+ return httprangereader.httprangereader(f)
f = os.path.join(p, path)
@@ -1416,18 +1416,3 @@
else:
return localrepository(ui, path, create)
-class httprangereader:
- def __init__(self, url):
- self.url = url
- self.pos = 0
- def seek(self, pos):
- self.pos = pos
- def read(self, bytes=None):
- opener = urllib2.build_opener(byterange.HTTPRangeHandler())
- urllib2.install_opener(opener)
- req = urllib2.Request(self.url)
- end = ''
- if bytes: end = self.pos + bytes
- req.add_header('Range', 'bytes=%d-%s' % (self.pos, end))
- f = urllib2.urlopen(req)
- return f.read()