Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 441c13907cb71d769607a3ac9372404810a69bdd..127be89bd279962f297fbf57318fa53ae0ae0e02 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -3871,7 +3871,7 @@ void JSObject::WriteToField(int descriptor, Object* value) { |
void JSObject::AddProperty(Handle<JSObject> object, Handle<Name> name, |
Handle<Object> value, |
PropertyAttributes attributes) { |
- LookupIterator it(object, name, LookupIterator::CHECK_OWN_REAL); |
+ LookupIterator it(object, name, LookupIterator::CHECK_PROPERTY); |
#ifdef DEBUG |
uint32_t index; |
DCHECK(!object->IsJSProxy()); |
@@ -3896,7 +3896,8 @@ MaybeHandle<Object> JSObject::SetOwnPropertyIgnoreAttributes( |
PropertyAttributes attributes, |
ExecutableAccessorInfoHandling handling) { |
DCHECK(!value->IsTheHole()); |
- LookupIterator it(object, name, LookupIterator::CHECK_HIDDEN_ACCESS); |
+ LookupIterator it(object, name, |
+ LookupIterator::CHECK_HIDDEN_SKIP_INTERCEPTOR); |
bool is_observed = object->map()->is_observed() && |
*name != it.isolate()->heap()->hidden_string(); |
for (; it.IsFound(); it.Next()) { |
@@ -4066,7 +4067,7 @@ Maybe<PropertyAttributes> JSReceiver::GetOwnPropertyAttributes( |
if (object->IsJSObject() && name->AsArrayIndex(&index)) { |
return GetOwnElementAttribute(object, index); |
} |
- LookupIterator it(object, name, LookupIterator::CHECK_OWN); |
+ LookupIterator it(object, name, LookupIterator::CHECK_HIDDEN); |
return GetPropertyAttributes(&it); |
} |
@@ -4774,7 +4775,7 @@ void JSObject::DeleteHiddenProperty(Handle<JSObject> object, Handle<Name> key) { |
bool JSObject::HasHiddenProperties(Handle<JSObject> object) { |
Handle<Name> hidden = object->GetIsolate()->factory()->hidden_string(); |
- LookupIterator it(object, hidden, LookupIterator::CHECK_OWN_REAL); |
+ LookupIterator it(object, hidden, LookupIterator::CHECK_PROPERTY); |
Maybe<PropertyAttributes> maybe = GetPropertyAttributes(&it); |
// Cannot get an exception since the hidden_string isn't accessible to JS. |
DCHECK(maybe.has_value); |
@@ -5027,8 +5028,9 @@ MaybeHandle<Object> JSObject::DeleteProperty(Handle<JSObject> object, |
// Skip interceptors on FORCE_DELETION. |
LookupIterator::Configuration config = |
- delete_mode == FORCE_DELETION ? LookupIterator::CHECK_HIDDEN_ACCESS |
- : LookupIterator::CHECK_OWN; |
+ delete_mode == FORCE_DELETION |
+ ? LookupIterator::CHECK_HIDDEN_SKIP_INTERCEPTOR |
+ : LookupIterator::CHECK_HIDDEN; |
LookupIterator it(object, name, config); |