Problem: redundant Windows errno conversion

Solution: in the Windows-specific ifdef in tcp_listener set_address,
check for error and set errno only after the IPv4 fallback has failed
too, to avoid setting errno when the socket creation succeeds through
the fallback.
This commit is contained in:
Luca Boccassi 2016-04-07 13:17:08 +01:00
parent 1e87d92527
commit 1a1abe3d5e

View File

@ -167,10 +167,6 @@ int zmq::tcp_listener_t::set_address (const char *addr_)
// Create a listening socket.
s = open_socket (address.family (), SOCK_STREAM, IPPROTO_TCP);
#ifdef ZMQ_HAVE_WINDOWS
if (s == INVALID_SOCKET)
errno = wsa_error_to_errno (WSAGetLastError ());
#endif
// IPv6 address family not supported, try automatic downgrade to IPv4.
if (s == -1 && address.family () == AF_INET6