summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog3
-rw-r--r--libjava/java/io/BufferedWriter.java4
2 files changed, 5 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 1fd3a3331ab..6e3b562ad67 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,8 @@
2001-10-18 Tom Tromey <tromey@redhat.com>
+ * java/io/BufferedWriter.java (write(String,int,int)): Correctly
+ check bounds.
+
* java/security/Security.java (loadProviders): Removed unused
`pname' variable. Don't create `File' object. Don't update
`providerCount'.
diff --git a/libjava/java/io/BufferedWriter.java b/libjava/java/io/BufferedWriter.java
index e99586121db..ef12bd56745 100644
--- a/libjava/java/io/BufferedWriter.java
+++ b/libjava/java/io/BufferedWriter.java
@@ -1,5 +1,5 @@
/* BufferedWriter.java -- Buffer output into large blocks before writing
- Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -199,7 +199,7 @@ public class BufferedWriter extends Writer
*/
public void write (String str, int offset, int len) throws IOException
{
- if (offset < 0 || len < 0 || offset + len < str.length())
+ if (offset < 0 || len < 0 || offset + len > str.length())
throw new ArrayIndexOutOfBoundsException ();
synchronized (lock)