rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java
changeset 1796 136787ac00d3
parent 1795 3c23f0cebd32
child 1800 65cab8539582
     1.1 --- a/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Fri Feb 27 10:52:26 2015 +0100
     1.2 +++ b/rt/vm/src/main/java/org/apidesign/vm4brwsr/ByteCodeToJavaScript.java	Fri Feb 27 12:06:58 2015 +0100
     1.3 @@ -279,10 +279,7 @@
     1.4                          && (m.getAccess() & ACC_STATIC) == 0
     1.5                          && (m.getAccess() & ACC_PRIVATE) == 0) {
     1.6                      final String mn = findMethodName(m, new StringBuilder());
     1.7 -                    append("\n        try {");
     1.8 -                    append("\n          if (!x['").append(mn).append("']) Object.defineProperty(x, '").append(mn).append("', { value : c['").append(mn).append("']});");
     1.9 -                    append("\n        } catch (ignore) {");
    1.10 -                    append("\n        }");
    1.11 +                    append("\n        if (!x['").append(mn).append("']) Object.defineProperty(x, '").append(mn).append("', { value : c['").append(mn).append("']});");
    1.12                  }
    1.13              }
    1.14          }
    1.15 @@ -292,11 +289,8 @@
    1.16              requireReference(superInterface);
    1.17          }
    1.18          append("\n    }");
    1.19 -        append("\n    try {");
    1.20 -        append("\n      Object.defineProperty(c, 'fillInstOf', { value: ").append(className).append("fillInstOf });");
    1.21 -        append("\n      ").append(className).append("fillInstOf(c);");
    1.22 -        append("\n    } catch (ignore) {");
    1.23 -        append("\n    }");
    1.24 +        append("\n    if (!c.hasOwnProperty('fillInstOf')) Object.defineProperty(c, 'fillInstOf', { value: ").append(className).append("fillInstOf });");
    1.25 +        append("\n    ").append(className).append("fillInstOf(c);");
    1.26  //        obfuscationDelegate.exportJSProperty(this, "c", instOfName);
    1.27          append("\n    CLS.$class = 'temp';");
    1.28          append("\n    CLS.$class = ");