| Index: Source/platform/heap/ThreadState.cpp
|
| diff --git a/Source/platform/heap/ThreadState.cpp b/Source/platform/heap/ThreadState.cpp
|
| index 78dbd72ebbbb69142a7e5922dbb6e00826598b5b..728bb222dca5663de9563db0a6c58cad681ee482 100644
|
| --- a/Source/platform/heap/ThreadState.cpp
|
| +++ b/Source/platform/heap/ThreadState.cpp
|
| @@ -596,8 +596,7 @@ void ThreadState::performIdleGC(double deadlineSeconds)
|
| return;
|
| }
|
|
|
| - // FIXME: Make this precise once idle task is guaranteed to be not in nested loop.
|
| - Heap::collectGarbage(HeapPointersOnStack, GCWithoutSweep, Heap::IdleGC);
|
| + Heap::collectGarbage(NoHeapPointersOnStack, GCWithoutSweep, Heap::IdleGC);
|
| }
|
|
|
| void ThreadState::scheduleIdleGC()
|
| @@ -612,7 +611,7 @@ void ThreadState::scheduleIdleGC()
|
|
|
| if (!m_hasPendingIdleTask) {
|
| m_hasPendingIdleTask = true;
|
| - Scheduler::shared()->postIdleTask(FROM_HERE, WTF::bind<double>(&ThreadState::performIdleGC, this));
|
| + Scheduler::shared()->postNonNestableIdleTask(FROM_HERE, WTF::bind<double>(&ThreadState::performIdleGC, this));
|
| }
|
| setGCState(IdleGCScheduled);
|
| }
|
|
|