Show More
@@ -296,6 +296,11 b' class bundle10(object):' | |||||
296 |
|
296 | |||
297 | yield self.close() |
|
297 | yield self.close() | |
298 |
|
298 | |||
|
299 | # filter any nodes that claim to be part of the known set | |||
|
300 | def prune(self, revlog, missing, commonrevs, source): | |||
|
301 | rr, rl = revlog.rev, revlog.linkrev | |||
|
302 | return [n for n in missing if rl(rr(n)) not in commonrevs] | |||
|
303 | ||||
299 | def generate(self, commonrevs, clnodes, fastpathlinkrev, source): |
|
304 | def generate(self, commonrevs, clnodes, fastpathlinkrev, source): | |
300 | '''yield a sequence of changegroup chunks (strings)''' |
|
305 | '''yield a sequence of changegroup chunks (strings)''' | |
301 | repo = self._repo |
|
306 | repo = self._repo | |
@@ -311,11 +316,6 b' class bundle10(object):' | |||||
311 | fnodes = {} # needed file nodes |
|
316 | fnodes = {} # needed file nodes | |
312 | changedfiles = set() |
|
317 | changedfiles = set() | |
313 |
|
318 | |||
314 | # filter any nodes that claim to be part of the known set |
|
|||
315 | def prune(revlog, missing): |
|
|||
316 | rr, rl = revlog.rev, revlog.linkrev |
|
|||
317 | return [n for n in missing if rl(rr(n)) not in commonrevs] |
|
|||
318 |
|
||||
319 | # Callback for the changelog, used to collect changed files and manifest |
|
319 | # Callback for the changelog, used to collect changed files and manifest | |
320 | # nodes. |
|
320 | # nodes. | |
321 | # Returns the linkrev node (identity in the changelog case). |
|
321 | # Returns the linkrev node (identity in the changelog case). | |
@@ -347,7 +347,7 b' class bundle10(object):' | |||||
347 |
|
347 | |||
348 | for f in changedfiles: |
|
348 | for f in changedfiles: | |
349 | fnodes[f] = {} |
|
349 | fnodes[f] = {} | |
350 | mfnodes = prune(mf, mfs) |
|
350 | mfnodes = self.prune(mf, mfs, commonrevs, source) | |
351 | for chunk in self.group(mfnodes, mf, lookupmf, units=_('manifests'), |
|
351 | for chunk in self.group(mfnodes, mf, lookupmf, units=_('manifests'), | |
352 | reorder=reorder): |
|
352 | reorder=reorder): | |
353 | yield chunk |
|
353 | yield chunk | |
@@ -377,7 +377,7 b' class bundle10(object):' | |||||
377 | def lookupfilelog(x): |
|
377 | def lookupfilelog(x): | |
378 | return linkrevnodes[x] |
|
378 | return linkrevnodes[x] | |
379 |
|
379 | |||
380 | filenodes = prune(filerevlog, linkrevnodes) |
|
380 | filenodes = self.prune(filerevlog, linkrevnodes, commonrevs, source) | |
381 | if filenodes: |
|
381 | if filenodes: | |
382 | progress(msgbundling, i + 1, item=fname, unit=msgfiles, |
|
382 | progress(msgbundling, i + 1, item=fname, unit=msgfiles, | |
383 | total=total) |
|
383 | total=total) |
General Comments 0
You need to be logged in to leave comments.
Login now