treemanifest: avoid unnecessary copies/processing when using alwaysmatcher
Differential Revision: https://phab.mercurial-scm.org/D4368
--- a/mercurial/manifest.py Thu Aug 23 00:33:06 2018 -0700
+++ b/mercurial/manifest.py Thu Aug 23 00:34:25 2018 -0700
@@ -940,7 +940,7 @@
def filesnotin(self, m2, match=None):
'''Set of files in this manifest that are not in the other'''
- if match:
+ if match and not match.always():
m1 = self.matches(match)
m2 = m2.matches(match)
return m1.filesnotin(m2)
@@ -1085,7 +1085,7 @@
the nodeid will be None and the flags will be the empty
string.
'''
- if match:
+ if match and not match.always():
m1 = self.matches(match)
m2 = m2.matches(match)
return m1.diff(m2, clean=clean)