1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/VM.java Sun Oct 20 20:36:03 2013 +0200
1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/VM.java Thu Nov 07 09:41:45 2013 +0100
1.3 @@ -137,13 +137,17 @@
1.4 out.append(
1.5 " return vm;\n"
1.6 + " };\n"
1.7 + + " function mangleClass(name) {\n"
1.8 + + " return name.replace__Ljava_lang_String_2Ljava_lang_CharSequence_2Ljava_lang_CharSequence_2(\n"
1.9 + + " '_', '_1').replace__Ljava_lang_String_2CC('.','_');\n"
1.10 + + " };\n"
1.11 + " global.bck2brwsr = function() {\n"
1.12 + " var args = Array.prototype.slice.apply(arguments);\n"
1.13 + " var vm = fillInVMSkeleton({});\n"
1.14 + " var loader = {};\n"
1.15 + " loader.vm = vm;\n"
1.16 + " loader.loadClass = function(name) {\n"
1.17 - + " var attr = name.replace__Ljava_lang_String_2CC('.','_');\n"
1.18 + + " var attr = mangleClass(name);\n"
1.19 + " var fn = vm[attr];\n"
1.20 + " if (fn) return fn(false);\n"
1.21 + " return vm.org_apidesign_vm4brwsr_VMLazy(false).\n"
1.22 @@ -154,7 +158,7 @@
1.23 + " }\n"
1.24 + " vm.loadClass = loader.loadClass;\n"
1.25 + " vm._reload = function(name, byteCode) {;\n"
1.26 - + " var attr = name.replace__Ljava_lang_String_2CC('.','_');\n"
1.27 + + " var attr = mangleClass(name);\n"
1.28 + " delete vm[attr];\n"
1.29 + " return vm.org_apidesign_vm4brwsr_VMLazy(false).\n"
1.30 + " reload__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_String_2_3Ljava_lang_Object_2_3B(loader, name, args, byteCode);\n"