| Index: src/heap/spaces.cc
|
| diff --git a/src/heap/spaces.cc b/src/heap/spaces.cc
|
| index cfc283f85b7aa628a649cf93c604dddc7fa96359..9be53e03f284018c8b8cafa6462f82712992fba4 100644
|
| --- a/src/heap/spaces.cc
|
| +++ b/src/heap/spaces.cc
|
| @@ -47,7 +47,9 @@ HeapObjectIterator::HeapObjectIterator(Page* page,
|
| owner == page->heap()->code_space());
|
| Initialize(reinterpret_cast<PagedSpace*>(owner), page->area_start(),
|
| page->area_end(), kOnePageOnly, size_func);
|
| - DCHECK(page->WasSweptPrecisely() || page->SweepingCompleted());
|
| + DCHECK(page->WasSweptPrecisely() ||
|
| + (static_cast<PagedSpace*>(owner)->swept_precisely() &&
|
| + page->SweepingCompleted()));
|
| }
|
|
|
|
|
| @@ -81,7 +83,9 @@ bool HeapObjectIterator::AdvanceToNextPage() {
|
| if (cur_page == space_->anchor()) return false;
|
| cur_addr_ = cur_page->area_start();
|
| cur_end_ = cur_page->area_end();
|
| - DCHECK(cur_page->WasSweptPrecisely());
|
| + DCHECK(cur_page->WasSweptPrecisely() ||
|
| + (static_cast<PagedSpace*>(cur_page->owner())->swept_precisely() &&
|
| + cur_page->SweepingCompleted()));
|
| return true;
|
| }
|
|
|
|
|