summaryrefslogtreecommitdiffstats
path: root/net/base
diff options
context:
space:
mode:
Diffstat (limited to 'net/base')
-rw-r--r--net/base/tcp_client_socket_win.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/base/tcp_client_socket_win.cc b/net/base/tcp_client_socket_win.cc
index 1111d71..dff0391b 100644
--- a/net/base/tcp_client_socket_win.cc
+++ b/net/base/tcp_client_socket_win.cc
@@ -87,8 +87,11 @@ int TCPClientSocket::Connect(CompletionCallback* callback) {
WSAEventSelect(socket_, overlapped_.hEvent, FD_CONNECT);
if (!connect(socket_, ai->ai_addr, static_cast<int>(ai->ai_addrlen))) {
- TRACE_EVENT_END("socket.connect", this, "");
// Connected without waiting!
+ CHECK(WaitForSingleObject(overlapped_.hEvent, 0) == WAIT_OBJECT_0);
+ BOOL ok = WSAResetEvent(overlapped_.hEvent);
+ CHECK(ok);
+ TRACE_EVENT_END("socket.connect", this, "");
return OK;
}