Make sure that heap is iterable prior to iterating it in Logger:: methods.
R=vegorov@chromium.org BUG=v8:1700 TEST=none Review URL: http://codereview.chromium.org/8079002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
5ed752de96
commit
0b2f694d99
@ -1519,6 +1519,7 @@ void Logger::LowLevelLogWriteBytes(const char* bytes, int size) {
|
||||
|
||||
|
||||
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::LogExistingFunction(Handle<SharedFunctionInfo> shared,
|
||||
|
||||
|
||||
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::LogCompiledFunctions() {
|
||||
|
||||
|
||||
void Logger::LogAccessorCallbacks() {
|
||||
HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
|
||||
HeapIterator iterator;
|
||||
AssertNoAllocation no_alloc;
|
||||
for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
|
||||
|
Loading…
Reference in New Issue
Block a user