##// END OF EJS Templates
treemanifest: make filesnotin() faster...
Martin von Zweigbergk -
r24405:cbe9d50d default
parent child Browse files
Show More
@@ -482,8 +482,20 b' class treemanifest(object):'
482
482
483 def filesnotin(self, m2):
483 def filesnotin(self, m2):
484 '''Set of files in this manifest that are not in the other'''
484 '''Set of files in this manifest that are not in the other'''
485 files = set(self.iterkeys())
485 files = set()
486 files.difference_update(m2.iterkeys())
486 def _filesnotin(t1, t2):
487 for d, m1 in t1._dirs.iteritems():
488 if d in t2._dirs:
489 m2 = t2._dirs[d]
490 _filesnotin(m1, m2)
491 else:
492 files.update(m1.iterkeys())
493
494 for fn in t1._files.iterkeys():
495 if fn not in t2._files:
496 files.add(t1._subpath(fn))
497
498 _filesnotin(self, m2)
487 return files
499 return files
488
500
489 @propertycache
501 @propertycache
General Comments 0
You need to be logged in to leave comments. Login now