aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schickel2006-04-09 23:30:16 +0000
committerJohannes Schickel2006-04-09 23:30:16 +0000
commitdf1bc871f19736df177119e4d5d945ce5eb97244 (patch)
treeb0c955f711e82aba9ebfcab36200b2633f742e9b
parent071884589a090472c7a1e85dd98ea1a3d9c27d41 (diff)
downloadscummvm-rg350-df1bc871f19736df177119e4d5d945ce5eb97244.tar.gz
scummvm-rg350-df1bc871f19736df177119e4d5d945ce5eb97244.tar.bz2
scummvm-rg350-df1bc871f19736df177119e4d5d945ce5eb97244.zip
Forces usage of SYSTEM_NOT_SUPPORTING_D_TYPE on amd64 systems. (read comment for more information)
svn-id: r21739
-rw-r--r--backends/fs/posix/posix-fs.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/backends/fs/posix/posix-fs.cpp b/backends/fs/posix/posix-fs.cpp
index 13ba7f3f8b..9ce7a85990 100644
--- a/backends/fs/posix/posix-fs.cpp
+++ b/backends/fs/posix/posix-fs.cpp
@@ -137,7 +137,12 @@ FSList POSIXFilesystemNode::listDir(ListMode mode) const {
#ifdef __DC__
entry._isDirectory = dp->d_size < 0;
-#elif defined(SYSTEM_NOT_SUPPORTING_D_TYPE)
+#elif defined(SYSTEM_NOT_SUPPORTING_D_TYPE) || defined(__x86_64__)
+ // HACK: on debian/unstable (and gentoo it seems) running on amd64 the d_type field
+ // is always 0/DT_UNKNOWN so use this also on amd64 systems maybe check this in
+ // the configure script when running on an amd64 instead of forcing it for all amd64
+ // systems. It seems to work on Fedora though.
+
// TODO: d_type is not part of POSIX, so it might not be supported
// on some of our targets. For those systems where it isn't supported,
// add this #elif case, which tries to use stat() instead.