# HG changeset patch # User Martin von Zweigbergk # Date 2015-05-27 18:47:55 # Node ID a410479c7ee7a1aac85e5d5dfa9eda6532ab1254 # Parent d02f4b3e71f5abb95dee5459437717057f0d1dfe match: drop optimization (?) of 'parentdirs' calculation It seems unlikely that the optimization to avoid calling util.finddirs twice will be noticeable, so let's drop it. This makes the two conditions for includes and regular patterns more similar. diff --git a/mercurial/match.py b/mercurial/match.py --- a/mercurial/match.py +++ b/mercurial/match.py @@ -224,19 +224,18 @@ class match(object): ''' if dir in self._excluderoots: return False - parentdirs = None if (self._includeroots and dir not in self._includeroots and dir not in self._includedirs): - parentdirs = list(util.finddirs(dir)) - if not any(parent in self._includeroots for parent in parentdirs): + if not any(parent in self._includeroots + for parent in util.finddirs(dir)): return False return (not self._fileroots or '.' in self._fileroots or dir in self._fileroots or dir in self._dirs or any(parentdir in self._fileroots - for parentdir in parentdirs or util.finddirs(dir))) + for parentdir in util.finddirs(dir))) def exact(self, f): '''Returns True if f is in .files().'''