rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_String.js
1.1 --- a/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_String.js Tue May 06 08:36:54 2014 +0200
1.2 +++ b/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_String.js Mon May 12 11:18:46 2014 +0200
1.3 @@ -3,15 +3,17 @@
1.4 vm.java_lang_String(false);
1.5
1.6 Array.at = function(arr, indx, value) {
1.7 - if (indx < 0 || indx >= arr.length) {
1.8 - var e = vm.java_lang_ArrayIndexOutOfBoundsException(true);
1.9 - e.constructor.cons__VLjava_lang_String_2.call(e, indx.toString());
1.10 - throw e;
1.11 + var prev = arr[indx];
1.12 + if (typeof prev === 'undefined' && (x < 0 || indx >= arr.length)) {
1.13 + var e = vm.java_lang_ArrayIndexOutOfBoundsException(true);
1.14 + e.constructor.cons__VLjava_lang_String_2.call(e, indx.toString());
1.15 + throw e;
1.16 }
1.17 if (arguments.length === 3) {
1.18 - arr[indx] = value;
1.19 + arr[indx] = value;
1.20 + } else {
1.21 + return prev;
1.22 }
1.23 - return arr[indx];
1.24 };
1.25 Array.prototype.getClass__Ljava_lang_Class_2 = function() {
1.26 return vm.java_lang_Class(false).defineArray__Ljava_lang_Class_2Ljava_lang_String_2Ljava_lang_Object_2(this.jvmName, this.fnc);