# HG changeset patch # User Martin von Zweigbergk # Date 1426546876 25200 # Node ID 1297480ed347e9506a213b9998ad6eb200480dfa # Parent cbe9d50d9e650490fb6942a8ff7f0ab64a99166f treemanifest: make hasdir() faster Same rationale as the previous change. diff -r cbe9d50d9e65 -r 1297480ed347 mercurial/manifest.py --- a/mercurial/manifest.py Tue Mar 03 13:50:06 2015 -0800 +++ b/mercurial/manifest.py Mon Mar 16 16:01:16 2015 -0700 @@ -506,7 +506,12 @@ return self._alldirs def hasdir(self, dir): - return dir in self._alldirs + topdir, subdir = _splittopdir(dir) + if topdir: + if topdir in self._dirs: + return self._dirs[topdir].hasdir(subdir) + return False + return (dir + '/') in self._dirs def matches(self, match): '''generate a new manifest filtered by the match argument'''