Reviewers: Søren Gjesse,

Description:
Visit all roots in the UnreachableObjectsFilter.

If an object is only referenced from DOM wrappers, it can only
be seen if all roots are visited.

Please review this at http://codereview.chromium.org/6226004/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/heap.cc
  M src/profile-generator.cc


Index: src/heap.cc
diff --git a/src/heap.cc b/src/heap.cc
index 5832ccbb3900a7a9227397bdad8c3cd1032b15ec..156e38318078cf0a22f01373cf07746323c730fc 100644
--- a/src/heap.cc
+++ b/src/heap.cc
@@ -5029,7 +5029,7 @@ class UnreachableObjectsFilter : public HeapObjectsFilter {
       obj->SetMark();
     }
     UnmarkingVisitor visitor;
-    Heap::IterateRoots(&visitor, VISIT_ONLY_STRONG);
+    Heap::IterateRoots(&visitor, VISIT_ALL);
     while (visitor.can_process())
       visitor.ProcessNext();
   }
Index: src/profile-generator.cc
diff --git a/src/profile-generator.cc b/src/profile-generator.cc
index 34d18771cf1f0664acf09511fa93bd115d446a20..4476cb876c16a303596cdba83bce39e6d05e4b38 100644
--- a/src/profile-generator.cc
+++ b/src/profile-generator.cc
@@ -2385,7 +2385,7 @@ bool HeapSnapshotGenerator::IterateAndExtractReferences() {
   if (interrupted) return false;
   SetRootGcRootsReference();
   RootsReferencesExtractor extractor(this);
-  Heap::IterateRoots(&extractor, VISIT_ONLY_STRONG);
+  Heap::IterateRoots(&extractor, VISIT_ALL);
   return ReportProgress();
 }



--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to