From 08708435a753098fd23e9a2eb59569ae47d7cb12 Mon Sep 17 00:00:00 2001
From: KIU Shueng Chuan <nixchuan@gmail.com>
Date: Sat, 23 Feb 2013 10:37:45 +0800
Subject: [PATCH] avoid defining macros already present on mingw32

---
 main.c     | 7 +++++++
 mongoose.c | 3 +++
 2 files changed, 10 insertions(+)

diff --git a/main.c b/main.c
index 4993b82b0..8c4778310 100644
--- a/main.c
+++ b/main.c
@@ -41,8 +41,15 @@
 #include <windows.h>
 #include <winsvc.h>
 #include <shlobj.h>
+
+#ifndef PATH_MAX
 #define PATH_MAX MAX_PATH
+#endif
+
+#ifndef S_ISDIR
 #define S_ISDIR(x) ((x) & _S_IFDIR)
+#endif
+
 #define DIRSEP '\\'
 #define snprintf _snprintf
 #define vsnprintf _vsnprintf
diff --git a/mongoose.c b/mongoose.c
index 7399c5ca3..3cb1be742 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -139,7 +139,10 @@ typedef long off_t;
 #define flockfile(x) EnterCriticalSection(&global_log_file_lock)
 #define funlockfile(x) LeaveCriticalSection(&global_log_file_lock)
 #define sleep(x) Sleep((x) * 1000)
+
+#if !defined(va_copy)
 #define va_copy(x, y) x = y
+#endif // !va_copy MINGW #defines va_copy
 
 #if !defined(fileno)
 #define fileno(x) _fileno(x)
-- 
GitLab