From 9b3bbe093b1ed8105de77bfe4d07079c7a7412aa Mon Sep 17 00:00:00 2001 From: daney Date: Tue, 15 Mar 2005 16:46:51 +0000 Subject: 2005-03-15 David Daney * gnu/java/net/natPlainSocketImplPosix.cc (read_helper): Handle count == 0 case. 2005-03-15 David Daney * java/io/BufferedInputStream.java (available): Use 'in' instead of 'super' for underlying stream access. (close): Ditto. (read(byte[], int, int)): Ditto. (refill): Ditto. (skip): Call skip on underlying stream when possible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96516 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/gnu/java/net/natPlainSocketImplPosix.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libjava/gnu') diff --git a/libjava/gnu/java/net/natPlainSocketImplPosix.cc b/libjava/gnu/java/net/natPlainSocketImplPosix.cc index 46b56bb6efb..3f1dde9f5a2 100644 --- a/libjava/gnu/java/net/natPlainSocketImplPosix.cc +++ b/libjava/gnu/java/net/natPlainSocketImplPosix.cc @@ -1,4 +1,4 @@ -/* Copyright (C) 2003, 2004 Free Software Foundation +/* Copyright (C) 2003, 2004, 2005 Free Software Foundation This file is part of libgcj. @@ -405,6 +405,11 @@ gnu::java::net::PlainSocketImpl$SocketInputStream::read(jbyteArray buffer, jint static jint read_helper (jint native_fd, jint timeout, jbyte *bytes, jint count) { + // If zero bytes were requested, short circuit so that recv + // doesn't signal EOF. + if (count == 0) + return 0; + // Do timeouts via select. if (timeout > 0 && native_fd >= 0 && native_fd < FD_SETSIZE) { -- cgit v1.2.3