| Index: src/top.cc
|
| diff --git a/src/top.cc b/src/top.cc
|
| index e40fc11ef3a74b0f7559e99a3f313fc535adf797..bb2dea4d2db8f4191eab5713e3ff0bd26376b0bf 100644
|
| --- a/src/top.cc
|
| +++ b/src/top.cc
|
| @@ -494,11 +494,17 @@ static MayAccessDecision MayAccessPreCheck(JSObject* receiver,
|
|
|
| bool Top::MayNamedAccess(JSObject* receiver, Object* key, v8::AccessType type) {
|
| ASSERT(receiver->IsAccessCheckNeeded());
|
| +
|
| + // The callers of this method are not expecting a GC.
|
| + AssertNoAllocation no_gc;
|
| +
|
| + // Skip checks for hidden properties access. Note, we do not
|
| + // require existence of a context in this case.
|
| + if (key == Heap::hidden_symbol()) return true;
|
| +
|
| // Check for compatibility between the security tokens in the
|
| // current lexical context and the accessed object.
|
| ASSERT(Top::context());
|
| - // The callers of this method are not expecting a GC.
|
| - AssertNoAllocation no_gc;
|
|
|
| MayAccessDecision decision = MayAccessPreCheck(receiver, type);
|
| if (decision != UNKNOWN) return decision == YES;
|
|
|