| Index: src/runtime.cc
|
| diff --git a/src/runtime.cc b/src/runtime.cc
|
| index dce2e15674b52fcc3ec30b8922923220112c14a6..16634978f5b88ddbafe2a237293d9d3d3a037e80 100644
|
| --- a/src/runtime.cc
|
| +++ b/src/runtime.cc
|
| @@ -783,7 +783,8 @@ static MaybeObject* Runtime_GetOwnProperty(Arguments args) {
|
| case JSObject::INTERCEPTED_ELEMENT:
|
| case JSObject::FAST_ELEMENT: {
|
| elms->set(IS_ACCESSOR_INDEX, Heap::false_value());
|
| - elms->set(VALUE_INDEX, *GetElement(obj, index));
|
| + Handle<Object> value = GetElement(obj, index);
|
| + elms->set(VALUE_INDEX, *value);
|
| elms->set(WRITABLE_INDEX, Heap::true_value());
|
| elms->set(ENUMERABLE_INDEX, Heap::true_value());
|
| elms->set(CONFIGURABLE_INDEX, Heap::true_value());
|
| @@ -816,12 +817,14 @@ static MaybeObject* Runtime_GetOwnProperty(Arguments args) {
|
| }
|
| break;
|
| }
|
| - case NORMAL:
|
| + case NORMAL: {
|
| // This is a data property.
|
| elms->set(IS_ACCESSOR_INDEX, Heap::false_value());
|
| - elms->set(VALUE_INDEX, *GetElement(obj, index));
|
| + Handle<Object> value = GetElement(obj, index);
|
| + elms->set(VALUE_INDEX, *value);
|
| elms->set(WRITABLE_INDEX, Heap::ToBoolean(!details.IsReadOnly()));
|
| break;
|
| + }
|
| default:
|
| UNREACHABLE();
|
| break;
|
|
|