diff options
Diffstat (limited to 'libjava/gnu/java/net/natPlainSocketImplWin32.cc')
-rw-r--r-- | libjava/gnu/java/net/natPlainSocketImplWin32.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libjava/gnu/java/net/natPlainSocketImplWin32.cc b/libjava/gnu/java/net/natPlainSocketImplWin32.cc index c4a54a90c3a..81cf6328078 100644 --- a/libjava/gnu/java/net/natPlainSocketImplWin32.cc +++ b/libjava/gnu/java/net/natPlainSocketImplWin32.cc @@ -491,6 +491,11 @@ jint gnu::java::net::PlainSocketImpl$SocketInputStream::read(jbyteArray buffer, jint offset, jint count) { + // If zero bytes were requested, short circuit so that recv + // doesn't signal EOF. + if (count == 0) + return 0; + if (! buffer) throw new ::java::lang::NullPointerException; |