-#ifdef WIN32
+#ifdef _WIN32
#include <winsock2.h>
#else
#include <sys/socket.h>
StreamSocket::StreamSocket(const Private &p, const SockAddr &paddr):
ClientSocket(p, paddr)
{
-#ifdef WIN32
+#ifdef _WIN32
WSAEventSelect(priv->handle, *priv->event, FD_READ|FD_CLOSE);
#endif
set_events(IO::P_INPUT);
SockAddr::SysAddr sa = addr.to_sys();
int err = ::connect(priv->handle, reinterpret_cast<sockaddr *>(&sa.addr), sa.size);
-#ifdef WIN32
+#ifdef _WIN32
if(err==SOCKET_ERROR)
{
int err_code = WSAGetLastError();
if(err==0)
{
connected = true;
+#ifdef _WIN32
+ WSAEventSelect(priv->handle, *priv->event, FD_READ|FD_CLOSE);
+#endif
set_events(IO::P_INPUT);
signal_connect_finished.emit(0);
}
if(err!=0)
{
set_events(IO::P_NONE);
-#ifdef WIN32
+#ifdef _WIN32
throw system_error("connect", WSAGetLastError());
#else
throw system_error("connect");
#endif
}
-#ifdef WIN32
+#ifdef _WIN32
WSAEventSelect(priv->handle, *priv->event, FD_READ|FD_CLOSE);
#endif
set_events(IO::P_INPUT);
peer_addr = 0;
}
-#ifdef WIN32
+#ifdef _WIN32
WSAEventSelect(priv->handle, *priv->event, FD_READ|FD_CLOSE);
#endif
set_events((err==0) ? IO::P_INPUT : IO::P_NONE);