mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8165198: Inconsistent values with JavaImporter after accessing undefined variable
Reviewed-by: sundar, hannesw
This commit is contained in:
parent
6bfb868454
commit
6a0b70e242
4 changed files with 42 additions and 3 deletions
|
@ -2136,7 +2136,7 @@ public abstract class ScriptObject implements PropertyAccess, Cloneable {
|
|||
|
||||
// Similar to getProtoSwitchPoints method above, but used for additional prototype switchpoints of
|
||||
// properties that are known not to exist, e.g. the original property name in a __noSuchProperty__ invocation.
|
||||
private SwitchPoint getProtoSwitchPoint(final String name) {
|
||||
final SwitchPoint getProtoSwitchPoint(final String name) {
|
||||
if (getProto() == null) {
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -138,9 +138,9 @@ public final class WithObject extends Scope {
|
|||
find = expression.findProperty(fallBack, true);
|
||||
if (find != null) {
|
||||
if (NO_SUCH_METHOD_NAME.equals(fallBack)) {
|
||||
link = expression.noSuchMethod(desc, request);
|
||||
link = expression.noSuchMethod(desc, request).addSwitchPoint(getProtoSwitchPoint(name));
|
||||
} else if (NO_SUCH_PROPERTY_NAME.equals(fallBack)) {
|
||||
link = expression.noSuchProperty(desc, request);
|
||||
link = expression.noSuchProperty(desc, request).addSwitchPoint(getProtoSwitchPoint(name));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue