Elijah Newren <newren@xxxxxxxxx> writes: > But to answer your question, the paths we visit are '.', '..', '.git', > and 'untracked', the first three of which we mark as path_none and > don't recurse into because of special rules for those paths, and the > last of which we shouldn't recurse into since it is ignored. Not a hard requirement, but I wish if we entirely ignored "." and ".." in our code (not just not counting, but making whoever calls readdir() skip and call it again when it gets "." or ".."). https://pubs.opengroup.org/onlinepubs/9699919799/functions/readdir.html seems to imply that readdir() may not give "." or ".." (if dot or dot-dot exists, you are to return them only once, which implies that it is perfectly OK for dot or dot-dot to be missing). So dropping the test for number of visited paths would be nicer from portability's point of view ;-) Thanks.