Convert undefined value read from arrays into null
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Thu, 21 Apr 2016 06:23:16 +0200
changeset 1931685193e0d793
parent 1930 9ca946fc4f01
child 1932 a8b9a7c2f3b5
Convert undefined value read from arrays into null
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 Apr 19 07:24:30 2016 +0200
     1.2 +++ b/rt/emul/mini/src/main/resources/org/apidesign/vm4brwsr/emul/lang/java_lang_String.js	Thu Apr 21 06:23:16 2016 +0200
     1.3 @@ -4,10 +4,13 @@
     1.4  
     1.5  Object.defineProperty(Array, "at", { configurable: true, writable: true, value : function(arr, indx, value) {
     1.6    var prev = arr[indx];
     1.7 -  if (typeof prev === 'undefined' && (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 +  if (typeof prev === 'undefined') {
    1.12 +    if (indx < 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 +    prev = null;
    1.18    }
    1.19    if (arguments.length === 3) {
    1.20      arr[indx] = value;