From 55e2963668d7f2b4150e29c9b57652e3478eab75 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Tue, 23 Feb 2016 10:09:42 -0500 Subject: bftw: Update at_flags when not following a broken symbolic link. --- bftw.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bftw.c b/bftw.c index d216481..b4a2e99 100644 --- a/bftw.c +++ b/bftw.c @@ -763,7 +763,8 @@ static void bftw_init_buffers(struct bftw_state *state, const struct dirent *de) int ret = ftwbuf_stat(ftwbuf, &state->statbuf, ftwbuf->at_flags); if (ret != 0 && follow && errno == ENOENT) { // Could be a broken symlink, retry without following - ret = ftwbuf_stat(ftwbuf, &state->statbuf, AT_SYMLINK_NOFOLLOW); + ftwbuf->at_flags = AT_SYMLINK_NOFOLLOW; + ret = ftwbuf_stat(ftwbuf, &state->statbuf, ftwbuf->at_flags); } if (ret != 0) { -- cgit v1.2.3