]> git.meshlink.io Git - catta/commitdiff
fix msvc _WIN64 ssize_t definition
authoreverHannes <hannes.ahrens@everbase.net>
Wed, 16 Sep 2015 13:30:18 +0000 (15:30 +0200)
committereverHannes <hannes.ahrens@everbase.net>
Wed, 16 Sep 2015 13:30:18 +0000 (15:30 +0200)
src/compat/windows/wincompat.h

index 6d6f414ec5c32d9c51eb4c2bbb7d43b6c0e93224..69de64d06e7f13ce733ad554d91a79b367543be4 100644 (file)
@@ -105,10 +105,15 @@ static inline struct cmsghdr *CMSG_NXTHDR(struct msghdr *m, struct cmsghdr *c) {
 
 #ifdef _MSC_VER
    // VS2012 and up has no ssize_t defined, before it was defined as unsigned int
-   #ifndef _SSIZE_T
-   #define _SSIZE_T
-   typedef signed int        ssize_t;
-   #endif
+  #ifndef _SSIZE_T_DEFINED
+    #define _SSIZE_T_DEFINED
+    #undef ssize_t
+    #ifdef _WIN64
+      typedef signed __int64  ssize_t;
+    #else
+      typedef signed int      ssize_t;
+    #endif
+  #endif
 #endif
 
 ssize_t recvmsg(int sockfd, struct msghdr *msg, int flags);