In FileFinder::GetPathsForPattern(), lstat() is used to check file type, and
only collects a path if its type is directory. This means symlinks to
directories are ignored.
For now, we've decided to always treat symlinks as links, in the first phase of file searching (before behaviors), which is where FileFinder::GetPathsForPattern() is used.
In the unix filefinder, in the second phase, which would use behaviors, the "recurse" behavior is ignored. So I'm going to change this bug's focus to FileFinder::GetChildDirectories(), which is the relevant part of the implementation of the downward recursion behavior. It needs to respect the default recurse behavior, "symlinks and directories", which means traversing symlinks to directories. Values other than default aren't yet supported.
Last edit: Michael Chisholm 2014-07-21
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
For now, we've decided to always treat symlinks as links, in the first phase of file searching (before behaviors), which is where FileFinder::GetPathsForPattern() is used.
In the unix filefinder, in the second phase, which would use behaviors, the "recurse" behavior is ignored. So I'm going to change this bug's focus to FileFinder::GetChildDirectories(), which is the relevant part of the implementation of the downward recursion behavior. It needs to respect the default recurse behavior, "symlinks and directories", which means traversing symlinks to directories. Values other than default aren't yet supported.
Last edit: Michael Chisholm 2014-07-21
Fixed in [r1800].
Related
Commit: [r1800]