diff options
Diffstat (limited to 'libjava/java/io/BufferedInputStream.java')
-rw-r--r-- | libjava/java/io/BufferedInputStream.java | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/libjava/java/io/BufferedInputStream.java b/libjava/java/io/BufferedInputStream.java index 3faaa65..17c570f 100644 --- a/libjava/java/io/BufferedInputStream.java +++ b/libjava/java/io/BufferedInputStream.java @@ -1,5 +1,5 @@ /* BufferedInputStream.java -- An input stream that implements buffering - Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2001, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -60,12 +60,11 @@ package java.io; * does. * * @author Aaron M. Renn (arenn@urbanophile.com) - * @author Warren Levy <warrenl@cygnus.com> - * @author Jeroen Frijters <jeroen@frijters.net> + * @author Warren Levy (warrenl@cygnus.com) + * @author Jeroen Frijters (jeroen@frijters.net) */ public class BufferedInputStream extends FilterInputStream { - /** * This is the default buffer size */ @@ -235,16 +234,16 @@ public class BufferedInputStream extends FilterInputStream if (markpos >= 0 && pos - markpos > marktarget) markpos = -1; - return ((int) buf[pos++]) & 0xFF; + return buf[pos++] & 0xFF; } /** * This method reads bytes from a stream and stores them into a caller * supplied buffer. It starts storing the data at index <code>off</code> * into the buffer and attempts to read <code>len</code> bytes. This method - * can return before reading the number of bytes requested. The actual - * number of bytes read is returned as an int. A -1 is returned to indicate - * the end of the stream. + * can return before reading the number of bytes requested. + * The actual number of bytes read is returned as an int. A -1 is returned + * to indicate the end of the stream. * <p> * This method will block until some data can be read. * @@ -267,14 +266,14 @@ public class BufferedInputStream extends FilterInputStream if (pos >= count && !refill()) return -1; // No bytes were read before EOF. - int remain = Math.min(count - pos, len); - System.arraycopy(buf, pos, b, off, remain); - pos += remain; + int totalBytesRead = Math.min(count - pos, len); + System.arraycopy(buf, pos, b, off, totalBytesRead); + pos += totalBytesRead; if (markpos >= 0 && pos - markpos > marktarget) markpos = -1; - return remain; + return totalBytesRead; } /** |