--- a/mercurial/match.py Thu May 25 09:52:49 2017 -0700
+++ b/mercurial/match.py Thu May 25 09:52:56 2017 -0700
@@ -462,12 +462,6 @@
if matcher.prefix():
self._always = any(f == path for f in matcher._files)
- # Some information is lost in the superclass's constructor, so we
- # can not accurately create the matching function for the subdirectory
- # from the inputs. Instead, we override matchfn() and visitdir() to
- # call the original matcher with the subdirectory path prepended.
- self.matchfn = lambda fn: matcher.matchfn(self._path + "/" + fn)
-
def bad(self, f, msg):
self._matcher.bad(self._path + "/" + f, msg)
@@ -480,6 +474,13 @@
def uipath(self, f):
return self._matcher.uipath(self._path + "/" + f)
+ def matchfn(self, f):
+ # Some information is lost in the superclass's constructor, so we
+ # can not accurately create the matching function for the subdirectory
+ # from the inputs. Instead, we override matchfn() and visitdir() to
+ # call the original matcher with the subdirectory path prepended.
+ return self._matcher.matchfn(self._path + "/" + f)
+
def visitdir(self, dir):
if dir == '.':
dir = self._path