From bcb9a11754c7bd6314bc7803ee0d9d9127884d9d Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 5 Dec 2008 18:02:04 +0000 Subject: [PATCH] (svn r14656) -Change: replace instances of x & S_IFREG with S_ISREG(x) as S_IFREG can be 0 on some platforms. --- src/fileio.cpp | 4 ++-- src/fios.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/fileio.cpp b/src/fileio.cpp index 0e2d4d8951..f4daaaa597 100644 --- a/src/fileio.cpp +++ b/src/fileio.cpp @@ -711,12 +711,12 @@ static int ScanPathForTarFiles(const char *path, size_t basepath_length) snprintf(filename, lengthof(filename), "%s%s", path, d_name); - if (sb.st_mode & S_IFDIR) { + if (S_ISDIR(sb.st_mode)) { /* Directory */ if (strcmp(d_name, ".") == 0 || strcmp(d_name, "..") == 0) continue; AppendPathSeparator(filename, lengthof(filename)); num += ScanPathForTarFiles(filename, basepath_length); - } else if (sb.st_mode & S_IFREG) { + } else if (S_ISREG(sb.st_mode)) { /* File */ char *ext = strrchr(filename, '.'); diff --git a/src/fios.cpp b/src/fios.cpp index 6827f37aa3..f5185464c5 100644 --- a/src/fios.cpp +++ b/src/fios.cpp @@ -226,7 +226,7 @@ static FiosItem *FiosGetFileList(SaveLoadDialogMode mode, fios_getlist_callback_ strecpy(d_name, FS2OTTD(dirent->d_name), lastof(d_name)); /* found file must be directory, but not '.' or '..' */ - if (FiosIsValidFile(_fios_path, dirent, &sb) && (sb.st_mode & S_IFDIR) && + if (FiosIsValidFile(_fios_path, dirent, &sb) && S_ISDIR(sb.st_mode) && (!FiosIsHiddenFile(dirent) || strncasecmp(d_name, PERSONAL_DIR, strlen(d_name)) == 0) && strcmp(d_name, ".") != 0 && strcmp(d_name, "..") != 0) { fios = _fios_items.Append(); @@ -259,7 +259,7 @@ static FiosItem *FiosGetFileList(SaveLoadDialogMode mode, fios_getlist_callback_ char *t; strecpy(d_name, FS2OTTD(dirent->d_name), lastof(d_name)); - if (!FiosIsValidFile(_fios_path, dirent, &sb) || !(sb.st_mode & S_IFREG) || FiosIsHiddenFile(dirent)) continue; + if (!FiosIsValidFile(_fios_path, dirent, &sb) || !S_ISREG(sb.st_mode) || FiosIsHiddenFile(dirent)) continue; /* File has no extension, skip it */ if ((t = strrchr(d_name, '.')) == NULL) continue;