| Index: src/heap.cc
|
| diff --git a/src/heap.cc b/src/heap.cc
|
| index 3fac6018b02a2f4db95a9aa1ba5a5025de275a37..b1ccc8db3acbe5985c99cbd6a7455baee620e74b 100644
|
| --- a/src/heap.cc
|
| +++ b/src/heap.cc
|
| @@ -2854,9 +2854,9 @@ MaybeObject* Heap::AllocateCell(Object* value) {
|
|
|
| MaybeObject* Heap::AllocatePropertyCell(Object* value) {
|
| Object* result;
|
| - { MaybeObject* maybe_result = AllocateRawPropertyCell();
|
| - if (!maybe_result->ToObject(&result)) return maybe_result;
|
| - }
|
| + MaybeObject* maybe_result = AllocateRawPropertyCell();
|
| + if (!maybe_result->ToObject(&result)) return maybe_result;
|
| +
|
| HeapObject::cast(result)->set_map_no_write_barrier(
|
| global_property_cell_map());
|
| PropertyCell* cell = PropertyCell::cast(result);
|
| @@ -2864,6 +2864,8 @@ MaybeObject* Heap::AllocatePropertyCell(Object* value) {
|
| SKIP_WRITE_BARRIER);
|
| cell->set_value(value);
|
| cell->set_type(Type::None());
|
| + maybe_result = cell->SetValueInferType(value);
|
| + if (maybe_result->IsFailure()) return maybe_result;
|
| return result;
|
| }
|
|
|
|
|