Compare commits
2 Commits
0.9.15-bet
...
0.9.17-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
d38b600366
|
|||
|
0ac7af2ea3
|
@@ -9,8 +9,13 @@ public class NativeWrapper extends ObjectValue {
|
|||||||
@Override
|
@Override
|
||||||
public ObjectValue getPrototype(Context ctx) {
|
public ObjectValue getPrototype(Context ctx) {
|
||||||
if (ctx.environment != null && prototype == NATIVE_PROTO) {
|
if (ctx.environment != null && prototype == NATIVE_PROTO) {
|
||||||
var res = ctx.environment.wrappers.getProto(wrapped.getClass());
|
var clazz = wrapped.getClass();
|
||||||
if (res != null) return res;
|
|
||||||
|
while (true) {
|
||||||
|
var res = ctx.environment.wrappers.getProto(clazz);
|
||||||
|
if (res != null) return res;
|
||||||
|
clazz = clazz.getSuperclass();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return super.getPrototype(ctx);
|
return super.getPrototype(ctx);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -289,7 +289,7 @@ public class NativeWrapperProvider implements WrapperProvider {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void initType(Class<?> clazz, FunctionValue constr, ObjectValue proto) {
|
private void initType(Class<?> clazz, FunctionValue constr, ObjectValue proto) {
|
||||||
if (constr != null && proto != null) return;
|
if (constr != null && proto != null || ignore.contains(clazz)) return;
|
||||||
// i vomit
|
// i vomit
|
||||||
if (
|
if (
|
||||||
clazz == Object.class ||
|
clazz == Object.class ||
|
||||||
|
|||||||
Reference in New Issue
Block a user