From 4e76c5b3e6b56a8a85a2dded17fd9ee21633728d Mon Sep 17 00:00:00 2001 From: mbaesken Date: Wed, 29 Aug 2018 10:11:51 +0200 Subject: [PATCH] 8210147: adjust some WSAGetLastError usages in windows network coding Reviewed-by: clanger, stuefe --- src/java.base/windows/native/libnet/Inet4AddressImpl.c | 2 +- src/java.base/windows/native/libnet/Inet6AddressImpl.c | 2 +- src/java.base/windows/native/libnet/SocketInputStream.c | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/java.base/windows/native/libnet/Inet4AddressImpl.c b/src/java.base/windows/native/libnet/Inet4AddressImpl.c index 0d897f5b01..a59dd214d0 100644 --- a/src/java.base/windows/native/libnet/Inet4AddressImpl.c +++ b/src/java.base/windows/native/libnet/Inet4AddressImpl.c @@ -326,7 +326,7 @@ ping4(JNIEnv *env, HANDLE hIcmpFile, SOCKETADDRESS *sa, ReplyBuffer = (VOID *)malloc(ReplySize); if (ReplyBuffer == NULL) { IcmpCloseHandle(hIcmpFile); - NET_ThrowNew(env, WSAGetLastError(), "Unable to allocate memory"); + NET_ThrowNew(env, -1, "Unable to allocate memory"); return JNI_FALSE; } diff --git a/src/java.base/windows/native/libnet/Inet6AddressImpl.c b/src/java.base/windows/native/libnet/Inet6AddressImpl.c index c3171bce33..993e5f8908 100644 --- a/src/java.base/windows/native/libnet/Inet6AddressImpl.c +++ b/src/java.base/windows/native/libnet/Inet6AddressImpl.c @@ -396,7 +396,7 @@ ping6(JNIEnv *env, HANDLE hIcmpFile, SOCKETADDRESS *sa, ReplyBuffer = (VOID *)malloc(ReplySize); if (ReplyBuffer == NULL) { IcmpCloseHandle(hIcmpFile); - NET_ThrowNew(env, WSAGetLastError(), "Unable to allocate memory"); + NET_ThrowNew(env, -1, "Unable to allocate memory"); return JNI_FALSE; } diff --git a/src/java.base/windows/native/libnet/SocketInputStream.c b/src/java.base/windows/native/libnet/SocketInputStream.c index b4022fb5d6..c3291b83ff 100644 --- a/src/java.base/windows/native/libnet/SocketInputStream.c +++ b/src/java.base/windows/native/libnet/SocketInputStream.c @@ -122,12 +122,13 @@ Java_java_net_SocketInputStream_socketRead0(JNIEnv *env, jobject this, (*env)->SetByteArrayRegion(env, data, off, nread, (jbyte *)bufP); } else { if (nread < 0) { + int err = WSAGetLastError(); // Check if the socket has been closed since we last checked. // This could be a reason for recv failing. if ((*env)->GetIntField(env, fdObj, IO_fd_fdID) == -1) { JNU_ThrowByName(env, "java/net/SocketException", "Socket closed"); } else { - switch (WSAGetLastError()) { + switch (err) { case WSAEINTR: JNU_ThrowByName(env, "java/net/SocketException", "socket closed"); -- GitLab