Bug 1350432 - Initial Quantum DOM scheduler implementation, disabled by default (r=froydnj)

MozReview-Commit-ID: JWBxz3bwgwD
This commit is contained in:
Bill McCloskey
2017-07-28 14:56:49 -07:00
parent 36a1c1cda1
commit 91b9d4ac3b
27 changed files with 1969 additions and 137 deletions

View File

@@ -149,9 +149,9 @@ ThreadEventQueue<InnerQueueT>::HasPendingEvent()
// We always get events from the topmost queue when there are nested queues.
if (mNestedQueues.IsEmpty()) {
return mBaseQueue->HasPendingEvent(lock);
return mBaseQueue->HasReadyEvent(lock);
} else {
return mNestedQueues.LastElement().mQueue->HasPendingEvent(lock);
return mNestedQueues.LastElement().mQueue->HasReadyEvent(lock);
}
}
@@ -160,7 +160,7 @@ bool
ThreadEventQueue<InnerQueueT>::ShutdownIfNoPendingEvents()
{
MutexAutoLock lock(mLock);
if (mNestedQueues.IsEmpty() && !mBaseQueue->HasPendingEvent(lock)) {
if (mNestedQueues.IsEmpty() && mBaseQueue->IsEmpty(lock)) {
mEventsAreDoomed = true;
return true;
}