Using own copy of replaceAll function, so the launcher can be independent on the Java libraries
1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/VM.java Thu May 15 18:09:50 2014 +0200
1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/VM.java Sun May 18 07:43:33 2014 +0200
1.3 @@ -459,9 +459,21 @@
1.4 " return vm;\n"
1.5 + " };\n"
1.6 + " var extensions = [];\n"
1.7 + + " function replaceAll(s, target, replacement) {\n"
1.8 + + " var pos = 0;\n"
1.9 + + " for (;;) {\n"
1.10 + + " var indx = s.indexOf(target, pos);\n"
1.11 + + " if (indx === -1) {\n"
1.12 + + " return s;\n"
1.13 + + " }\n"
1.14 + + " pos = indx + replacement.length;\n"
1.15 + + " s = s.substring(0, indx) + replacement + s.substring(indx + target.length);\n"
1.16 + + " }\n"
1.17 + + " }\n"
1.18 + " function mangleClass(name) {\n"
1.19 - + " return name.replace__Ljava_lang_String_2Ljava_lang_CharSequence_2Ljava_lang_CharSequence_2(\n"
1.20 - + " '_', '_1').replace__Ljava_lang_String_2CC('.','_');\n"
1.21 + + " name = replaceAll(name, '_', '_1');\n"
1.22 + + " name = replaceAll(name, '.', '_');\n"
1.23 + + " return name;\n"
1.24 + " };\n"
1.25 + " global.bck2brwsr = function() {\n"
1.26 + " var args = Array.prototype.slice.apply(arguments);\n"