summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--readdir.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/readdir.c b/readdir.c
index 457098a..2a5e400 100644
--- a/readdir.c
+++ b/readdir.c
@@ -302,9 +302,12 @@ int ScanDirectory(const char *name, int flag_dir, const NameFilter * filter,
char *tmp;
// skip hidden files, wrong kind, wrong suffix
+ save = errno;
if (flag_dir ? !FilterIsDirectory(entry) : !FilterIsFile(entry)) {
+ errno = save;
continue;
}
+ errno = save;
len = _D_ALLOC_NAMLEN(entry);
if (!(tmp = malloc(len))) {