Revision: 9487
Author:   [email protected]
Date:     Thu Sep 29 08:07:00 2011
Log: Make sure that heap is iterable prior to iterating it in Logger:: methods.

[email protected]
BUG=v8:1700
TEST=none

Review URL: http://codereview.chromium.org/8079002
http://code.google.com/p/v8/source/detail?r=9487

Modified:
 /branches/bleeding_edge/src/log.cc

=======================================
--- /branches/bleeding_edge/src/log.cc  Mon Sep 19 11:36:47 2011
+++ /branches/bleeding_edge/src/log.cc  Thu Sep 29 08:07:00 2011
@@ -1519,6 +1519,7 @@


 void Logger::LogCodeObjects() {
+  HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
   HeapIterator iterator;
   AssertNoAllocation no_alloc;
for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
@@ -1573,6 +1574,7 @@


 void Logger::LogCompiledFunctions() {
+  HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
   HandleScope scope;
   const int compiled_funcs_count = EnumerateCompiledFunctions(NULL, NULL);
   ScopedVector< Handle<SharedFunctionInfo> > sfis(compiled_funcs_count);
@@ -1591,6 +1593,7 @@


 void Logger::LogAccessorCallbacks() {
+  HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
   HeapIterator iterator;
   AssertNoAllocation no_alloc;
for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {

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

Reply via email to