You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by rg...@apache.org on 2015/06/02 22:43:30 UTC

svn commit: r1683180 - in /zookeeper/branches/branch-3.4: CHANGES.txt src/c/include/winconfig.h src/c/src/zookeeper.c

Author: rgs
Date: Tue Jun  2 20:43:29 2015
New Revision: 1683180

URL: http://svn.apache.org/r1683180
Log:
ZOOKEEPER-2096: C client builds with incorrect error codes in VisualStudio 2010+
(Vitaly Stakhovsky via rgs)

Modified:
    zookeeper/branches/branch-3.4/CHANGES.txt
    zookeeper/branches/branch-3.4/src/c/include/winconfig.h
    zookeeper/branches/branch-3.4/src/c/src/zookeeper.c

Modified: zookeeper/branches/branch-3.4/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.4/CHANGES.txt?rev=1683180&r1=1683179&r2=1683180&view=diff
==============================================================================
--- zookeeper/branches/branch-3.4/CHANGES.txt (original)
+++ zookeeper/branches/branch-3.4/CHANGES.txt Tue Jun  2 20:43:29 2015
@@ -81,6 +81,9 @@ BUGFIXES:
 
   ZOOKEEPER-2179: Typo in Watcher.java (Archana T via rgs)
 
+  ZOOKEEPER-2096: C client builds with incorrect error codes in VisualStudio 2010+
+  (Vitaly Stakhovsky via rgs)
+
 IMPROVEMENTS:
 
   ZOOKEEPER-1575. adding .gitattributes to prevent CRLF and LF mismatches for

Modified: zookeeper/branches/branch-3.4/src/c/include/winconfig.h
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.4/src/c/include/winconfig.h?rev=1683180&r1=1683179&r2=1683180&view=diff
==============================================================================
--- zookeeper/branches/branch-3.4/src/c/include/winconfig.h (original)
+++ zookeeper/branches/branch-3.4/src/c/include/winconfig.h Tue Jun  2 20:43:29 2015
@@ -184,8 +184,13 @@
 #define EHOSTDOWN EPIPE
 #define ESTALE ENODEV
 
+#ifndef EWOULDBLOCK
 #define EWOULDBLOCK WSAEWOULDBLOCK
+#endif
+
+#ifndef EINPROGRESS
 #define EINPROGRESS WSAEINPROGRESS
+#endif
 
 typedef int pid_t;
 #endif

Modified: zookeeper/branches/branch-3.4/src/c/src/zookeeper.c
URL: http://svn.apache.org/viewvc/zookeeper/branches/branch-3.4/src/c/src/zookeeper.c?rev=1683180&r1=1683179&r2=1683180&view=diff
==============================================================================
--- zookeeper/branches/branch-3.4/src/c/src/zookeeper.c (original)
+++ zookeeper/branches/branch-3.4/src/c/src/zookeeper.c Tue Jun  2 20:43:29 2015
@@ -1599,6 +1599,16 @@ int zookeeper_interest(zhandle_t *zh, in
                 rc = connect(zh->fd, (struct sockaddr*) &zh->addrs[zh->connect_index], sizeof(struct sockaddr_in));
 #ifdef WIN32
                 get_errno();
+#if _MSC_VER >= 1600
+                switch (errno) {
+                case WSAEWOULDBLOCK:
+                    errno = EWOULDBLOCK;
+                    break;
+                case WSAEINPROGRESS:
+                    errno = EINPROGRESS;
+                    break;
+                }
+#endif
 #endif
             }
             if (rc == -1) {