summaryrefslogtreecommitdiffstats
path: root/tools/idevicebackup2.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/idevicebackup2.c')
-rw-r--r--tools/idevicebackup2.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/idevicebackup2.c b/tools/idevicebackup2.c
index 02611a1..f7ea53a 100644
--- a/tools/idevicebackup2.c
+++ b/tools/idevicebackup2.c
@@ -254,7 +254,13 @@ static void scan_directory(const char *path, struct entry **files, struct entry
}
char *fpath = string_build_path(path, ep->d_name, NULL);
if (fpath) {
+#ifdef HAVE_DIRENT_D_TYPE
if (ep->d_type & DT_DIR) {
+#else
+ struct stat st;
+ if (stat(fpath, &st) != 0) return;
+ if (S_ISDIR(st.st_mode)) {
+#endif
struct entry *ent = malloc(sizeof(struct entry));
if (!ent) return;
ent->name = fpath;