# HG changeset patch # User Yuya Nishihara # Date 1580529452 -32400 # 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 -r bed8d08cfcb2 -r d52e3826cd4b mercurial/pathutil.py --- a/mercurial/pathutil.py Wed Oct 16 14:12:48 2019 +0200 +++ b/mercurial/pathutil.py Sat Feb 01 12:57:32 2020 +0900 @@ -100,8 +100,10 @@ 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])