aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang/natString.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/lang/natString.cc')
-rw-r--r--libjava/java/lang/natString.cc4
1 files changed, 4 insertions, 0 deletions
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