mercurial/bundlerepo.py
changeset 46780 6266d19556ad
parent 46711 a41565bef69f
child 46907 ffd3e823a7e5
equal deleted inserted replaced
46779:49fd21f32695 46780:6266d19556ad
   173         )
   173         )
   174 
   174 
   175 
   175 
   176 class bundlemanifest(bundlerevlog, manifest.manifestrevlog):
   176 class bundlemanifest(bundlerevlog, manifest.manifestrevlog):
   177     def __init__(
   177     def __init__(
   178         self, opener, cgunpacker, linkmapper, dirlogstarts=None, dir=b''
   178         self,
       
   179         nodeconstants,
       
   180         opener,
       
   181         cgunpacker,
       
   182         linkmapper,
       
   183         dirlogstarts=None,
       
   184         dir=b'',
   179     ):
   185     ):
   180         manifest.manifestrevlog.__init__(self, opener, tree=dir)
   186         manifest.manifestrevlog.__init__(self, nodeconstants, opener, tree=dir)
   181         bundlerevlog.__init__(
   187         bundlerevlog.__init__(
   182             self, opener, self.indexfile, cgunpacker, linkmapper
   188             self, opener, self.indexfile, cgunpacker, linkmapper
   183         )
   189         )
   184         if dirlogstarts is None:
   190         if dirlogstarts is None:
   185             dirlogstarts = {}
   191             dirlogstarts = {}
   190 
   196 
   191     def dirlog(self, d):
   197     def dirlog(self, d):
   192         if d in self._dirlogstarts:
   198         if d in self._dirlogstarts:
   193             self.bundle.seek(self._dirlogstarts[d])
   199             self.bundle.seek(self._dirlogstarts[d])
   194             return bundlemanifest(
   200             return bundlemanifest(
       
   201                 self.nodeconstants,
   195                 self.opener,
   202                 self.opener,
   196                 self.bundle,
   203                 self.bundle,
   197                 self._linkmapper,
   204                 self._linkmapper,
   198                 self._dirlogstarts,
   205                 self._dirlogstarts,
   199                 dir=d,
   206                 dir=d,
   366     def manifestlog(self):
   373     def manifestlog(self):
   367         self._cgunpacker.seek(self.manstart)
   374         self._cgunpacker.seek(self.manstart)
   368         # consume the header if it exists
   375         # consume the header if it exists
   369         self._cgunpacker.manifestheader()
   376         self._cgunpacker.manifestheader()
   370         linkmapper = self.unfiltered().changelog.rev
   377         linkmapper = self.unfiltered().changelog.rev
   371         rootstore = bundlemanifest(self.svfs, self._cgunpacker, linkmapper)
   378         rootstore = bundlemanifest(
       
   379             self.nodeconstants, self.svfs, self._cgunpacker, linkmapper
       
   380         )
   372         self.filestart = self._cgunpacker.tell()
   381         self.filestart = self._cgunpacker.tell()
   373 
   382 
   374         return manifest.manifestlog(
   383         return manifest.manifestlog(
   375             self.svfs, self, rootstore, self.narrowmatch()
   384             self.svfs, self, rootstore, self.narrowmatch()
   376         )
   385         )