Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index f5424800db77e56e1acd425036c2889d2d9664fe..52f858f17a5c88e05569b13ef384a8b4be252211 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -630,6 +630,22 @@ Object* JSObject::GetNormalizedProperty(const LookupResult* result) { |
} |
+Handle<Object> JSObject::GetNormalizedProperty(Handle<JSObject> object, |
+ const LookupResult* result) { |
+ DCHECK(!object->HasFastProperties()); |
+ Isolate* isolate = object->GetIsolate(); |
+ Handle<Object> value( |
+ object->property_dictionary()->ValueAt(result->GetDictionaryEntry()), |
+ isolate); |
+ if (object->IsGlobalObject()) { |
+ value = handle(Handle<PropertyCell>::cast(value)->value(), isolate); |
+ DCHECK(!value->IsTheHole()); |
+ } |
+ DCHECK(!value->IsPropertyCell() && !value->IsCell()); |
+ return value; |
+} |
+ |
+ |
void JSObject::SetNormalizedProperty(Handle<JSObject> object, |
Handle<Name> name, |
Handle<Object> value, |