aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsundar <none@none>2014-01-30 18:34:37 +0530
committersundar <none@none>2014-01-30 18:34:37 +0530
commitc45cf962b22600d2acaaa5a63dbaa21854fd76f3 (patch)
treec9514def39b5e4dd5642bb13bb8fbc7b1686c081 /src
parentc9e881d0877f20ef2da82a011b968bda82249eb2 (diff)
downloadnashorn-c45cf962b22600d2acaaa5a63dbaa21854fd76f3.tar.gz
8032944: Improve reflection in Nashorn
Reviewed-by: jlaskey, attila, ahgross
Diffstat (limited to 'src')
-rw-r--r--src/jdk/nashorn/internal/objects/NativeObject.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/jdk/nashorn/internal/objects/NativeObject.java b/src/jdk/nashorn/internal/objects/NativeObject.java
index 5777c96c..74d56ba6 100644
--- a/src/jdk/nashorn/internal/objects/NativeObject.java
+++ b/src/jdk/nashorn/internal/objects/NativeObject.java
@@ -645,10 +645,12 @@ public final class NativeObject {
targetObj.addBoundProperties(source, props);
} else if (source instanceof StaticClass) {
final Class<?> clazz = ((StaticClass)source).getRepresentedClass();
+ Bootstrap.checkReflectionAccess(clazz);
bindBeanProperties(targetObj, source, BeansLinker.getReadableStaticPropertyNames(clazz),
BeansLinker.getWritableStaticPropertyNames(clazz), BeansLinker.getStaticMethodNames(clazz));
} else {
final Class<?> clazz = source.getClass();
+ Bootstrap.checkReflectionAccess(clazz);
bindBeanProperties(targetObj, source, BeansLinker.getReadableInstancePropertyNames(clazz),
BeansLinker.getWritableInstancePropertyNames(clazz), BeansLinker.getInstanceMethodNames(clazz));
}
@@ -663,7 +665,6 @@ public final class NativeObject {
propertyNames.addAll(writablePropertyNames);
final Class<?> clazz = source.getClass();
- Bootstrap.checkReflectionAccess(clazz);
final MethodType getterType = MethodType.methodType(Object.class, clazz);
final MethodType setterType = MethodType.methodType(Object.class, clazz, Object.class);