From 1fea688aa22c88d9a11aabcce8cfafce3b100946 Mon Sep 17 00:00:00 2001 From: Leah Neukirchen Date: Sun, 17 Sep 2017 00:59:04 +0200 Subject: recurse: lstat on symlink loops, don't fail --- lr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lr.c') diff --git a/lr.c b/lr.c index 052bc29..2e9ad47 100644 --- a/lr.c +++ b/lr.c @@ -1868,7 +1868,8 @@ recurse(char *path, struct history *h) int root = (path[0] == '/' && path[1] == 0); if (resolve ? stat(fpath, &st) : lstat(fpath, &st) < 0) { - if (resolve && errno == ENOENT && !lstat(fpath, &st)) { + if (resolve && (errno == ENOENT || errno == ELOOP) && + !lstat(fpath, &st)) { /* ignore */ } else if (!h) { /* warn for toplevel arguments */ -- cgit 1.4.1