context: always pass a matcher into _matchstatus() (API)
authorMartin von Zweigbergk <martinvonz@google.com>
Tue, 22 Aug 2017 23:27:55 -0700
changeset 33954 c714e82b9ac2
parent 33953 8e472f3b7c63
child 33955 e43264525ce5
context: always pass a matcher into _matchstatus() (API) This just makes it a little easier to follow and removes the need to call the superclass's method in workingctx. Differential Revision: https://phab.mercurial-scm.org/D491
mercurial/context.py
--- a/mercurial/context.py	Wed Aug 23 11:30:25 2017 -0700
+++ b/mercurial/context.py	Tue Aug 22 23:27:55 2017 -0700
@@ -103,12 +103,10 @@
         return self.manifest()
 
     def _matchstatus(self, other, match):
-        """return match.always if match is none
-
-        This internal method provides a way for child objects to override the
+        """This internal method provides a way for child objects to override the
         match operator.
         """
-        return match or matchmod.always(self._repo.root, self._repo.getcwd())
+        return match
 
     def _buildstatus(self, other, s, match, listignored, listclean,
                      listunknown):
@@ -392,6 +390,7 @@
             reversed = True
             ctx1, ctx2 = ctx2, ctx1
 
+        match = match or matchmod.always(self._repo.root, self._repo.getcwd())
         match = ctx2._matchstatus(ctx1, match)
         r = scmutil.status([], [], [], [], [], [], [])
         r = ctx2._buildstatus(ctx1, r, match, listignored, listclean,
@@ -1848,8 +1847,6 @@
         If we aren't comparing against the working directory's parent, then we
         just use the default match object sent to us.
         """
-        superself = super(workingctx, self)
-        match = superself._matchstatus(other, match)
         if other != self._repo['.']:
             def bad(f, msg):
                 # 'f' may be a directory pattern from 'match.files()',