mercurial/httprangereader.py
changeset 2138 f5046cab9e2e
parent 1559 59b3639df0a9
child 2161 12e11413ca19
equal deleted inserted replaced
2137:5fefab118f7e 2138:f5046cab9e2e
    16     def read(self, bytes=None):
    16     def read(self, bytes=None):
    17         opener = urllib2.build_opener(byterange.HTTPRangeHandler())
    17         opener = urllib2.build_opener(byterange.HTTPRangeHandler())
    18         urllib2.install_opener(opener)
    18         urllib2.install_opener(opener)
    19         req = urllib2.Request(self.url)
    19         req = urllib2.Request(self.url)
    20         end = ''
    20         end = ''
    21         if bytes: end = self.pos + bytes
    21         if bytes:
       
    22             end = self.pos + bytes - 1
    22         req.add_header('Range', 'bytes=%d-%s' % (self.pos, end))
    23         req.add_header('Range', 'bytes=%d-%s' % (self.pos, end))
    23         f = urllib2.urlopen(req)
    24         f = urllib2.urlopen(req)
    24         return f.read()
    25         return f.read(bytes)