aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/lang/natString.cc4
2 files changed, 9 insertions, 0 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index a624e4e..1d3bb42 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+1999-04-07 Warren Levy <warrenl@cygnus.com>
+
+ * java/lang/natString.cc (init(jbyteArray,jint,jint,jstring)):
+ Set count to 0 when InputStreamReader returns -1 for EOF.
+
1999-04-07 Tom Tromey <tromey@cygnus.com>
* mauve-libgcj: Omit java.text.Collator,
diff --git a/libjava/java/lang/natString.cc b/libjava/java/lang/natString.cc
index 5cb7b2c..8aad9ee 100644
--- a/libjava/java/lang/natString.cc
+++ b/libjava/java/lang/natString.cc
@@ -392,6 +392,10 @@ java::lang::String::init (jbyteArray bytes, jint offset, jint count,
boffset = (char *) elements (array) - (char *) array;
// FIXME: this can throw IOException.
this->count = ir->read(array, 0, count);
+
+ // In case read() doesn't read anything, change -1 for EOF to a count of 0.
+ if (this->count < 0)
+ this->count = 0;
}
jboolean