undefined error when result of split was just one element
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Thu, 10 Oct 2013 09:33:40 +0200
changeset 13642cb12e6693d3
parent 1363 63714859ea5d
child 1365 4393b7db103b
undefined error when result of split was just one element
rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java
rt/emul/mini/src/main/java/java/lang/String.java
     1.1 --- a/rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java	Wed Oct 09 23:09:55 2013 +0200
     1.2 +++ b/rt/emul/compact/src/test/java/org/apidesign/bck2brwsr/tck/RegExpSplitTest.java	Thu Oct 10 09:33:40 2013 +0200
     1.3 @@ -32,6 +32,10 @@
     1.4          return Arrays.asList("How are you today?".split(" "));
     1.5      }
     1.6  
     1.7 +    public @Compare String splitNewline() {
     1.8 +        return Arrays.toString("initializer must be able to complete normally".split("\n"));
     1.9 +    }
    1.10 +
    1.11      public @Compare Object splitSpaceTrimMinusOne() {
    1.12          return Arrays.asList(" How are you today? ".split(" ", -1));
    1.13      }
     2.1 --- a/rt/emul/mini/src/main/java/java/lang/String.java	Wed Oct 09 23:09:55 2013 +0200
     2.2 +++ b/rt/emul/mini/src/main/java/java/lang/String.java	Thu Oct 10 09:33:40 2013 +0200
     2.3 @@ -2336,8 +2336,8 @@
     2.4          if (limit <= 0) {
     2.5              Object[] arr = splitImpl(this, regex, Integer.MAX_VALUE);
     2.6              int to = arr.length;
     2.7 -            if (limit == 0) {
     2.8 -                while (to > 1 && ((String)arr[--to]).isEmpty()) {
     2.9 +            if (limit == 0 && to > 0) {
    2.10 +                while (to > 0 && ((String)arr[--to]).isEmpty()) {
    2.11                  }
    2.12                  to++;
    2.13              }