diff options
author | Craig Tiller <ctiller@google.com> | 2016-11-30 13:31:31 -0800 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2016-11-30 13:31:31 -0800 |
commit | e238b04c729c0469ac84bfe09164f3209ded90a4 (patch) | |
tree | aec2cf7961cb1fad97d4ef901bb06f7bd4108f92 /src/core/lib/iomgr/tcp_client_windows.c | |
parent | b28c7e8710638b362e5bfdd7dd81a45241c376e8 (diff) | |
parent | 71cf7b39dafdeb376370972551cbf78f2750d02e (diff) |
Merge github.com:grpc/grpc into slice_with_exec_ctx
Diffstat (limited to 'src/core/lib/iomgr/tcp_client_windows.c')
-rw-r--r-- | src/core/lib/iomgr/tcp_client_windows.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/core/lib/iomgr/tcp_client_windows.c b/src/core/lib/iomgr/tcp_client_windows.c index 4ad417f77d..cc10060b9b 100644 --- a/src/core/lib/iomgr/tcp_client_windows.c +++ b/src/core/lib/iomgr/tcp_client_windows.c @@ -107,18 +107,22 @@ static void on_connect(grpc_exec_ctx *exec_ctx, void *acp, grpc_error *error) { gpr_mu_lock(&ac->mu); - if (error == GRPC_ERROR_NONE && socket != NULL) { - DWORD transfered_bytes = 0; - DWORD flags; - BOOL wsa_success = - WSAGetOverlappedResult(socket->socket, &socket->write_info.overlapped, - &transfered_bytes, FALSE, &flags); - GPR_ASSERT(transfered_bytes == 0); - if (!wsa_success) { - error = GRPC_WSA_ERROR(WSAGetLastError(), "ConnectEx"); + if (error == GRPC_ERROR_NONE) { + if (socket != NULL) { + DWORD transfered_bytes = 0; + DWORD flags; + BOOL wsa_success = + WSAGetOverlappedResult(socket->socket, &socket->write_info.overlapped, + &transfered_bytes, FALSE, &flags); + GPR_ASSERT(transfered_bytes == 0); + if (!wsa_success) { + error = GRPC_WSA_ERROR(WSAGetLastError(), "ConnectEx"); + } else { + *ep = grpc_tcp_create(socket, ac->resource_quota, ac->addr_name); + socket = NULL; + } } else { - *ep = grpc_tcp_create(socket, ac->resource_quota, ac->addr_name); - socket = NULL; + error = GRPC_ERROR_CREATE("socket is null"); } } |