| Index: src/heap-snapshot-generator.cc
|
| diff --git a/src/heap-snapshot-generator.cc b/src/heap-snapshot-generator.cc
|
| index 15e0a7ccef3bf2085e28c2c6bc691ed0b44ea69d..feced9f2bf2b57b68b758e2430c1343dd64326bd 100644
|
| --- a/src/heap-snapshot-generator.cc
|
| +++ b/src/heap-snapshot-generator.cc
|
| @@ -1681,13 +1681,14 @@ void V8HeapExplorer::SetWeakReference(HeapObject* parent_obj,
|
| int field_offset) {
|
| ASSERT(parent_entry == GetEntry(parent_obj)->index());
|
| HeapEntry* child_entry = GetEntry(child_obj);
|
| - if (child_entry != NULL) {
|
| + if (child_entry == NULL) return;
|
| + if (IsEssentialObject(child_obj)) {
|
| filler_->SetIndexedReference(HeapGraphEdge::kWeak,
|
| parent_entry,
|
| index,
|
| child_entry);
|
| - IndexedReferencesExtractor::MarkVisitedField(parent_obj, field_offset);
|
| }
|
| + IndexedReferencesExtractor::MarkVisitedField(parent_obj, field_offset);
|
| }
|
|
|
|
|
|
|