diff options
| author | Carl Worth <cworth@cworth.org> | 2010-01-06 10:09:17 -0800 |
|---|---|---|
| committer | Carl Worth <cworth@cworth.org> | 2010-01-06 10:32:06 -0800 |
| commit | 49f09958df22f80e4058b6f2892f6224a80c3d6d (patch) | |
| tree | 6565edc80b01ad3486f5ec59e293485efc9d1264 /vim | |
| parent | bd72d95bac894b3611bb4467e10c9481af0456bf (diff) | |
notmuch new: Fix regression preventing recursion through symlinks.
In commit 3df737bc4addfce71c647792ee668725e5221a98 we switched from
using stat() to using the d_type field in the result of scandir() to
determine whether a filename is a regular file or a directory. This
change introduced a regression in that the recursion would no longer
traverse through a symlink to a directory. (Since stat() would resolve
the symlink but with scandir() we see a distinct DT_LNK value in
d_type).
We fix this for directories by allowing both DT_DIR and DT_LNK values
to recurse, and then downgrading the existing not-a-directory check
within the recursion to not be an error. We also add a new
not-a-directory check outside the recursion that is an error.
Diffstat (limited to 'vim')
0 files changed, 0 insertions, 0 deletions
