| Index: src/handles.cc
|
| ===================================================================
|
| --- src/handles.cc (revision 366)
|
| +++ src/handles.cc (working copy)
|
| @@ -332,13 +332,6 @@
|
| Handle<FixedArray> GetKeysInFixedArrayFor(Handle<JSObject> object) {
|
| Handle<FixedArray> content = Factory::empty_fixed_array();
|
|
|
| - // Check access rights if required.
|
| - if (object->IsAccessCheckNeeded() &&
|
| - !Top::MayNamedAccess(*object, Heap::undefined_value(), v8::ACCESS_KEYS)) {
|
| - Top::ReportFailedAccessCheck(*object, v8::ACCESS_KEYS);
|
| - return content;
|
| - }
|
| -
|
| JSObject* arguments_boilerplate =
|
| Top::context()->global_context()->arguments_boilerplate();
|
| JSFunction* arguments_function =
|
| @@ -352,6 +345,14 @@
|
| p = Handle<Object>(p->GetPrototype())) {
|
| Handle<JSObject> current(JSObject::cast(*p));
|
|
|
| + // Check access rights if required.
|
| + if (current->IsAccessCheckNeeded() &&
|
| + !Top::MayNamedAccess(*current, Heap::undefined_value(),
|
| + v8::ACCESS_KEYS)) {
|
| + Top::ReportFailedAccessCheck(*current, v8::ACCESS_KEYS);
|
| + break;
|
| + }
|
| +
|
| // Compute the property keys.
|
| content = UnionOfKeys(content, GetEnumPropertyKeys(current));
|
|
|
|
|