1.1 --- a/emul/mini/src/main/java/java/lang/String.java Wed Jan 30 09:32:05 2013 +0100
1.2 +++ b/emul/mini/src/main/java/java/lang/String.java Wed Jan 30 14:03:49 2013 +0100
1.3 @@ -201,6 +201,10 @@
1.4 * If the {@code offset} and {@code count} arguments index
1.5 * characters outside the bounds of the {@code value} array
1.6 */
1.7 + public String(char value[], int offset, int count) {
1.8 + initFromCharArray(value, offset, count);
1.9 + }
1.10 +
1.11 @JavaScriptBody(args = { "charArr", "off", "cnt" }, body =
1.12 "var up = off + cnt;\n" +
1.13 "for (var i = off; i < up; i++) {\n" +
1.14 @@ -208,8 +212,7 @@
1.15 "}\n" +
1.16 "this._r(charArr.slice(off, up).join(\"\"));\n"
1.17 )
1.18 - public String(char value[], int offset, int count) {
1.19 - }
1.20 + private native void initFromCharArray(char value[], int offset, int count);
1.21
1.22 /**
1.23 * Allocates a new {@code String} that contains characters from a subarray
1.24 @@ -555,7 +558,7 @@
1.25 int ch = nextChar(bytes, at);
1.26 v[chlen++] = (char)ch;
1.27 }
1.28 - this.r = new String(v, 0, chlen);
1.29 + initFromCharArray(v, 0, chlen);
1.30 }
1.31
1.32 /**