From 69b9d8fdbd4d428515c15cf47c2ed2324f7aa021 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Wed, 25 Nov 2015 21:57:19 +0100 Subject: [PATCH] Use DT_UNKNOWN when dirent d_type extension is not supported. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit edolstra: “…since callers of readDirectory have to handle the possibility of DT_UNKNOWN anyway, and we don't want to do a stat call for every directory entry unless it's really needed.” --- src/libutil/util.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/libutil/util.cc b/src/libutil/util.cc index d1b67c6d4..656d67a53 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -232,11 +232,7 @@ DirEntries readDirectory(const Path & path) checkInterrupt(); string name = dirent->d_name; if (name == "." || name == "..") continue; -#ifdef HAVE_STRUCT_DIRENT_D_TYPE - entries.emplace_back(name, dirent->d_ino, dirent->d_type); -#else - entries.emplace_back(name, dirent->d_ino, getFileType(absPath(name, path))); -#endif + entries.emplace_back(name, dirent->d_ino, #ifdef HAVE_STRUCT_DIRENT_D_TYPE dirent->d_type #else DT_UNKNOWN #endif); } if (errno) throw SysError(format("reading directory ‘%1%’") % path);