##// END OF EJS Templates
changegroup: write root manifests and subdir manifests in a single loop...
Martin von Zweigbergk -
r28232:829d369f default
parent child Browse files
Show More
@@ -756,7 +756,7 b' class cg1packer(object):'
756 mfchangedfiles, fnodes):
756 mfchangedfiles, fnodes):
757 repo = self._repo
757 repo = self._repo
758 ml = repo.manifest
758 ml = repo.manifest
759 tmfnodes = {}
759 tmfnodes = {'': mfs}
760
760
761 # Callback for the manifest, used to collect linkrevs for filelog
761 # Callback for the manifest, used to collect linkrevs for filelog
762 # revisions.
762 # revisions.
@@ -825,17 +825,16 b' class cg1packer(object):'
825 return clnode
825 return clnode
826 return lookupmflinknode
826 return lookupmflinknode
827
827
828 mfnodes = self.prune(ml, mfs, commonrevs)
829 size = 0
828 size = 0
830 for x in self._packmanifests('', mfnodes, makelookupmflinknode('')):
829 while tmfnodes:
831 size += len(x)
830 dir = min(tmfnodes)
832 yield x
831 nodes = tmfnodes[dir]
833 for dir, nodes in tmfnodes.iteritems():
834 prunednodes = self.prune(ml.dirlog(dir), nodes, commonrevs)
832 prunednodes = self.prune(ml.dirlog(dir), nodes, commonrevs)
835 for x in self._packmanifests(dir, prunednodes,
833 for x in self._packmanifests(dir, prunednodes,
836 makelookupmflinknode(dir)):
834 makelookupmflinknode(dir)):
837 size += len(x)
835 size += len(x)
838 yield x
836 yield x
837 del tmfnodes[dir]
839 self._verbosenote(_('%8.i (manifests)\n') % size)
838 self._verbosenote(_('%8.i (manifests)\n') % size)
840 yield self._manifestsdone()
839 yield self._manifestsdone()
841
840
General Comments 0
You need to be logged in to leave comments. Login now