summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/eina/eina_module.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/eina/eina_module.c b/src/lib/eina/eina_module.c
index 15a81f27fc..35adeaabb8 100644
--- a/src/lib/eina/eina_module.c
+++ b/src/lib/eina/eina_module.c
@@ -258,7 +258,12 @@ EINA_API Eina_Module *eina_module_new(const char *file)
(file[0] != '\0' && file[1] == ':' && file[2] == '\\'))
{
if (stat(file, &st) == -1) return NULL;
+#ifdef _MSC_VER
+#define EINA_S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
+ if (!EINA_S_ISREG(st.st_mode)) return NULL;
+#else
if (!S_ISREG(st.st_mode)) return NULL;
+#endif
}
len = strlen(file);