Array flag in ByteCodeToJavaScript.countArgs is not reset to false for object types. The following signature '([Ljava/lang/Object;)I' is incorrectly reported to return array
authorLubomir Nerad <lubomir.nerad@oracle.com>
Thu, 03 Jan 2013 16:16:04 +0100
changeset 407b2f68438b0e2
parent 385 2a00bdf753bb
child 408 21da8e2f5911
Array flag in ByteCodeToJavaScript.countArgs is not reset to false for object types. The following signature '([Ljava/lang/Object;)I' is incorrectly reported to return array
vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
vm/src/main/java/org/apidesign/vm4brwsr/VM.java
     1.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Wed Dec 26 17:10:01 2012 +0100
     1.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Thu Jan 03 16:16:04 2013 +0100
     1.3 @@ -1235,6 +1235,7 @@
     1.4                          returnType[0] = 'L';
     1.5                      }
     1.6                      i = next + 1;
     1.7 +                    array = false;
     1.8                      continue;
     1.9                  case '[':
    1.10                      array = true;
     2.1 --- a/vm/src/main/java/org/apidesign/vm4brwsr/VM.java	Wed Dec 26 17:10:01 2012 +0100
     2.2 +++ b/vm/src/main/java/org/apidesign/vm4brwsr/VM.java	Thu Jan 03 16:16:04 2013 +0100
     2.3 @@ -117,7 +117,7 @@
     2.4              + "      if (fn) return fn(false);\n"
     2.5              + "      if (!args[0]) throw 'bck2brwsr initialized without loader function, cannot load ' + name;\n"
     2.6              + "      return vm.org_apidesign_vm4brwsr_VMLazy(false).\n"
     2.7 -            + "        load___3Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_String_2_3Ljava_lang_Object_2(loader, name, args);\n"
     2.8 +            + "        load__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_String_2_3Ljava_lang_Object_2(loader, name, args);\n"
     2.9              + "    }\n"
    2.10              + "    if (args[0]) vm.loadClass = loader.loadClass;\n"
    2.11              + "    return loader;\n"