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); |
} |