diff options
Diffstat (limited to 'libjava/java/lang/natString.cc')
-rw-r--r-- | libjava/java/lang/natString.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libjava/java/lang/natString.cc b/libjava/java/lang/natString.cc index 08f1755..bfdc50f 100644 --- a/libjava/java/lang/natString.cc +++ b/libjava/java/lang/natString.cc @@ -687,6 +687,8 @@ java::lang::String::substring (jint beginIndex, jint endIndex) { if (beginIndex < 0 || endIndex > count || beginIndex > endIndex) JvThrow (new StringIndexOutOfBoundsException()); + if (beginIndex == 0 && endIndex == count) + return this; jint newCount = endIndex - beginIndex; if (newCount <= 8) // Optimization, mainly for GC. return JvNewString(JvGetStringChars(this) + beginIndex, newCount); |