mercurial/bundlerepo.py
changeset 14494 1ffeeb91c55d
parent 14412 9ac479758d3b
child 15091 106f89299da6
equal deleted inserted replaced
14493:5cc7905bccc9 14494:1ffeeb91c55d
    31         revlog.revlog.__init__(self, opener, indexfile)
    31         revlog.revlog.__init__(self, opener, indexfile)
    32         self.bundle = bundle
    32         self.bundle = bundle
    33         self.basemap = {}
    33         self.basemap = {}
    34         n = len(self)
    34         n = len(self)
    35         chain = None
    35         chain = None
    36         while 1:
    36         while True:
    37             chunkdata = bundle.deltachunk(chain)
    37             chunkdata = bundle.deltachunk(chain)
    38             if not chunkdata:
    38             if not chunkdata:
    39                 break
    39                 break
    40             node = chunkdata['node']
    40             node = chunkdata['node']
    41             p1 = chunkdata['p1']
    41             p1 = chunkdata['p1']
   183             self.tempfile = temp
   183             self.tempfile = temp
   184             fptemp = os.fdopen(fdtemp, 'wb')
   184             fptemp = os.fdopen(fdtemp, 'wb')
   185 
   185 
   186             try:
   186             try:
   187                 fptemp.write("HG10UN")
   187                 fptemp.write("HG10UN")
   188                 while 1:
   188                 while True:
   189                     chunk = self.bundle.read(2**18)
   189                     chunk = self.bundle.read(2**18)
   190                     if not chunk:
   190                     if not chunk:
   191                         break
   191                         break
   192                     fptemp.write(chunk)
   192                     fptemp.write(chunk)
   193             finally:
   193             finally:
   230         return self._url
   230         return self._url
   231 
   231 
   232     def file(self, f):
   232     def file(self, f):
   233         if not self.bundlefilespos:
   233         if not self.bundlefilespos:
   234             self.bundle.seek(self.filestart)
   234             self.bundle.seek(self.filestart)
   235             while 1:
   235             while True:
   236                 chunkdata = self.bundle.filelogheader()
   236                 chunkdata = self.bundle.filelogheader()
   237                 if not chunkdata:
   237                 if not chunkdata:
   238                     break
   238                     break
   239                 fname = chunkdata['filename']
   239                 fname = chunkdata['filename']
   240                 self.bundlefilespos[fname] = self.bundle.tell()
   240                 self.bundlefilespos[fname] = self.bundle.tell()
   241                 while 1:
   241                 while True:
   242                     c = self.bundle.deltachunk(None)
   242                     c = self.bundle.deltachunk(None)
   243                     if not c:
   243                     if not c:
   244                         break
   244                         break
   245 
   245 
   246         if f[0] == '/':
   246         if f[0] == '/':