# HG changeset patch # User Jaroslav Tulach # Date 1381390420 -7200 # Node ID 2cb12e6693d3ade3f0d9dd482661cf7eaccf04ee # Parent 63714859ea5db4ad94083df2b3e896e801d09dfc undefined error when result of split was just one element diff -r 63714859ea5d -r 2cb12e6693d3 rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java --- a/rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java Wed Oct 09 23:09:55 2013 +0200 +++ b/rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java Thu Oct 10 09:33:40 2013 +0200 @@ -32,6 +32,10 @@ return Arrays.asList("How are you today?".split(" ")); } + public @Compare String splitNewline() { + return Arrays.toString("initializer must be able to complete normally".split("\n")); + } + public @Compare Object splitSpaceTrimMinusOne() { return Arrays.asList(" How are you today? ".split(" ", -1)); } diff -r 63714859ea5d -r 2cb12e6693d3 rt/emul/mini/src/main/java/java/lang/String.java --- a/rt/emul/mini/src/main/java/java/lang/String.java Wed Oct 09 23:09:55 2013 +0200 +++ b/rt/emul/mini/src/main/java/java/lang/String.java Thu Oct 10 09:33:40 2013 +0200 @@ -2336,8 +2336,8 @@ if (limit <= 0) { Object[] arr = splitImpl(this, regex, Integer.MAX_VALUE); int to = arr.length; - if (limit == 0) { - while (to > 1 && ((String)arr[--to]).isEmpty()) { + if (limit == 0 && to > 0) { + while (to > 0 && ((String)arr[--to]).isEmpty()) { } to++; }