From 1478d6b7e2eff41f19fac1ca62593d545b360893 Mon Sep 17 00:00:00 2001 From: Bob Nystrom Date: Wed, 16 Mar 2016 07:27:03 -0700 Subject: [PATCH] Add a few comments. --- src/module/io.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/module/io.c b/src/module/io.c index f094cb18..428d9f62 100644 --- a/src/module/io.c +++ b/src/module/io.c @@ -10,13 +10,20 @@ #include #include +// Windows doesn't define all of the Unix permission and mode flags by default, +// so map them ourselves. #if defined(WIN32) || defined(WIN64) -#include -#define S_IRUSR _S_IREAD -#define S_IWUSR _S_IWRITE -#define O_SYNC 0 -#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) -#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) + #include + + // Map to Windows permission flags. + #define S_IRUSR _S_IREAD + #define S_IWUSR _S_IWRITE + + #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) + #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) + + // Not supported on Windows. + #define O_SYNC 0 #endif typedef struct sFileRequestData @@ -203,9 +210,7 @@ static int mapFileFlags(int flags) if (flags & 0x01) result |= O_RDONLY; if (flags & 0x02) result |= O_WRONLY; if (flags & 0x04) result |= O_RDWR; -#ifdef O_SYNC if (flags & 0x08) result |= O_SYNC; -#endif if (flags & 0x10) result |= O_CREAT; if (flags & 0x20) result |= O_TRUNC; if (flags & 0x40) result |= O_EXCL;