From cb1902adbf904ff5b63d0a9ceed558783b0c875a Mon Sep 17 00:00:00 2001 From: Warren Levy Date: Thu, 1 Jul 1999 17:01:00 +0000 Subject: [multiple changes] 1999-07-01 Warren Levy * gnu/gcj/convert/BytesToUnicode.java (read): Changed outlength to count and revised comments to match. * gnu/gcj/convert/Input_EUCJIS.java (read): Same as Input_8859_1.java. * gnu/gcj/convert/Input_JavaSrc.java (read): ditto. * gnu/gcj/convert/Input_SJIS.java (read): ditto. * gnu/gcj/convert/Input_UTF8.java (read): ditto. * gnu/gcj/convert/natInput_EUCJIS.cc (read): ditto. * gnu/gcj/convert/natInput_SJIS.cc (read): ditto. 1999-07-01 John-Marc Chandonia * gnu/gcj/convert/Input_8859_1.java (read): Use 3rd parameter properly as count rather than outlength. * java/io/BufferedOutputStream.java (write(byte[],int,int): Flush output on overflow rather than buffer fill. * java/io/BufferedReader.java (fill): Don't clear out the buffer if markPos is 0 and there is still room in the buffer. From-SVN: r27892 --- libjava/java/io/BufferedOutputStream.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'libjava/java/io/BufferedOutputStream.java') diff --git a/libjava/java/io/BufferedOutputStream.java b/libjava/java/io/BufferedOutputStream.java index d37ed5d..3e26592 100644 --- a/libjava/java/io/BufferedOutputStream.java +++ b/libjava/java/io/BufferedOutputStream.java @@ -42,6 +42,7 @@ public class BufferedOutputStream extends FilterOutputStream public synchronized void write (int b) throws IOException { + // Flush output on overflow though JDK (1.2) doc may infer to flush on fill. if (count < buf.length) buf[count++] = (byte) b; else @@ -55,8 +56,10 @@ public class BufferedOutputStream extends FilterOutputStream public synchronized void write (byte[] b, int off, int len) throws IOException, NullPointerException, IndexOutOfBoundsException { + // Flush output on overflow though JDK (1.2) doc may infer to flush on fill. + // If LEN < 0 then the downstream write will fail for us. - if (len >= 0 && count + len < buf.length) + if (len >= 0 && count + len <= buf.length) { System.arraycopy(b, off, buf, count, len); count += len; -- cgit v1.1