From 1ced32aaad9731c1fc14e232dc6463159b3d48d5 Mon Sep 17 00:00:00 2001 From: Benoit Foucher Date: Thu, 15 Nov 2018 08:24:20 +0100 Subject: Fixed SOCKET_ERROR assignement with DWORD, fixes #267 --- cpp/src/Ice/Network.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'cpp/src/Ice/Network.cpp') diff --git a/cpp/src/Ice/Network.cpp b/cpp/src/Ice/Network.cpp index e9ddd8b1f5e..f14ddabdc3d 100755 --- a/cpp/src/Ice/Network.cpp +++ b/cpp/src/Ice/Network.cpp @@ -910,6 +910,7 @@ IceInternal::NativeInfo::queueAction(SocketOperation op, IAsyncAction^ action, b if(checkIfErrorOrCompleted(op, action, action->Status, connect)) { asyncInfo->count = 0; + asyncInfo->error = ERROR_SUCCESS; } else { @@ -933,13 +934,13 @@ IceInternal::NativeInfo::queueActionCompleted(SocketOperation op, AsyncInfo* asy { if(status != Windows::Foundation::AsyncStatus::Completed) { - asyncInfo->count = SOCKET_ERROR; asyncInfo->error = info->ErrorCode.Value; } else { - asyncInfo->count = 0; + asyncInfo->error = ERROR_SUCCESS; } + asyncInfo->count = 0; completed(op); } @@ -958,6 +959,7 @@ IceInternal::NativeInfo::queueOperation(SocketOperation op, IAsyncOperationcount = static_cast(operation->GetResults()); + info->error = ERROR_SUCCESS; _completedHandler(op); return; } @@ -988,12 +990,13 @@ IceInternal::NativeInfo::queueOperationCompleted(SocketOperation op, AsyncInfo* { if(status != Windows::Foundation::AsyncStatus::Completed) { - info->count = SOCKET_ERROR; + info->count = 0; info->error = operation->ErrorCode.Value; } else { info->count = static_cast(operation->GetResults()); + info->error = ERROR_SUCCESS; } completed(op); } @@ -3036,7 +3039,7 @@ IceInternal::doFinishConnectAsync(SOCKET fd, AsyncInfo& info) // failure to connect. The socket isn't closed by this method. // - if(static_cast(info.count) == SOCKET_ERROR) + if(info.error != ERROR_SUCCESS) { WSASetLastError(info.error); if(connectionRefused()) -- cgit v1.2.3