diff --git a/src/helma/scripting/rhino/HopObjectCtor.java b/src/helma/scripting/rhino/HopObjectCtor.java index 8d3a71bb..d0c9a7d0 100644 --- a/src/helma/scripting/rhino/HopObjectCtor.java +++ b/src/helma/scripting/rhino/HopObjectCtor.java @@ -96,7 +96,11 @@ public class HopObjectCtor extends FunctionObject { HopObject hobj = new HopObject(protoname, core, node, proto); if (proto != null) { - Object f = ScriptableObject.getProperty(proto, "__constructor__"); + Object f = ScriptableObject.getProperty(proto, protoname); + if (!(f instanceof Function)) { + // backup compatibility: look up function constructor + f = ScriptableObject.getProperty(proto, "__constructor__"); + } if (f instanceof Function) { ((Function) f).call(cx, core.global, hobj, args); }