# HG changeset patch # User Yuya Nishihara # Date 2020-02-01 03:57:32 # Node ID d52e3826cd4b16d6cdf0b50d3a744455bdfcbe28 # Parent bed8d08cfcb2e61bf02838f5bae7d1cf0dcb1df7 pathutil: resurrect comment about path auditing order It was removed at 51c86c6167c1, but expensive symlink traversal isn't the only reason we should walk path components from the root. diff --git a/mercurial/pathutil.py b/mercurial/pathutil.py --- a/mercurial/pathutil.py +++ b/mercurial/pathutil.py @@ -100,8 +100,10 @@ class pathauditor(object): parts.pop() normparts.pop() # It's important that we check the path parts starting from the root. - # This means we won't accidentally traverse a symlink into some other - # filesystem (which is potentially expensive to access). + # We don't want to add "foo/bar/baz" to auditeddir before checking if + # there's a "foo/.hg" directory. This also means we won't accidentally + # traverse a symlink into some other filesystem (which is potentially + # expensive to access). for i in range(len(parts)): prefix = pycompat.ossep.join(parts[: i + 1]) normprefix = pycompat.ossep.join(normparts[: i + 1])