| Index: cc/CCSchedulerStateMachine.cpp
|
| diff --git a/cc/CCSchedulerStateMachine.cpp b/cc/CCSchedulerStateMachine.cpp
|
| index 2d8845024596faf3d17b425e6a7f091ca896b3bc..798521ae2fa11c601d2e6102187b379696011cdf 100644
|
| --- a/cc/CCSchedulerStateMachine.cpp
|
| +++ b/cc/CCSchedulerStateMachine.cpp
|
| @@ -22,7 +22,7 @@ CCSchedulerStateMachine::CCSchedulerStateMachine()
|
| , m_needsCommit(false)
|
| , m_needsForcedCommit(false)
|
| , m_mainThreadNeedsLayerTextures(false)
|
| - , m_updateMoreResourcesPending(false)
|
| + , m_updateResourcesCompletePending(false)
|
| , m_insideVSync(false)
|
| , m_visible(false)
|
| , m_canBeginFrame(false)
|
| @@ -47,7 +47,7 @@ std::string CCSchedulerStateMachine::toString()
|
| base::StringAppendF(&str, "m_needsCommit = %d; ", m_needsCommit);
|
| base::StringAppendF(&str, "m_needsForcedCommit = %d; ", m_needsForcedCommit);
|
| base::StringAppendF(&str, "m_mainThreadNeedsLayerTextures = %d; ", m_mainThreadNeedsLayerTextures);
|
| - base::StringAppendF(&str, "m_updateMoreResourcesPending = %d; ", m_updateMoreResourcesPending);
|
| + base::StringAppendF(&str, "m_updateResourcesCompletePending = %d; ", m_updateResourcesCompletePending);
|
| base::StringAppendF(&str, "m_insideVSync = %d; ", m_insideVSync);
|
| base::StringAppendF(&str, "m_visible = %d; ", m_visible);
|
| base::StringAppendF(&str, "m_canBeginFrame = %d; ", m_canBeginFrame);
|
| @@ -143,8 +143,8 @@ CCSchedulerStateMachine::Action CCSchedulerStateMachine::nextAction() const
|
| case COMMIT_STATE_UPDATING_RESOURCES:
|
| if (shouldDraw())
|
| return m_needsForcedRedraw ? ACTION_DRAW_FORCED : ACTION_DRAW_IF_POSSIBLE;
|
| - if (!m_updateMoreResourcesPending)
|
| - return ACTION_BEGIN_UPDATE_MORE_RESOURCES;
|
| + if (!m_updateResourcesCompletePending)
|
| + return ACTION_BEGIN_UPDATE_RESOURCES;
|
| return ACTION_NONE;
|
|
|
| case COMMIT_STATE_READY_TO_COMMIT:
|
| @@ -177,9 +177,9 @@ void CCSchedulerStateMachine::updateState(Action action)
|
| m_needsForcedCommit = false;
|
| return;
|
|
|
| - case ACTION_BEGIN_UPDATE_MORE_RESOURCES:
|
| + case ACTION_BEGIN_UPDATE_RESOURCES:
|
| ASSERT(m_commitState == COMMIT_STATE_UPDATING_RESOURCES);
|
| - m_updateMoreResourcesPending = true;
|
| + m_updateResourcesCompletePending = true;
|
| return;
|
|
|
| case ACTION_COMMIT:
|
| @@ -234,7 +234,7 @@ void CCSchedulerStateMachine::setMainThreadNeedsLayerTextures()
|
| bool CCSchedulerStateMachine::vsyncCallbackNeeded() const
|
| {
|
| // To prevent live-lock, we must always tick when updating resources.
|
| - if (m_updateMoreResourcesPending || m_commitState == COMMIT_STATE_UPDATING_RESOURCES)
|
| + if (m_updateResourcesCompletePending || m_commitState == COMMIT_STATE_UPDATING_RESOURCES)
|
| return true;
|
|
|
| // If we can't draw, don't tick until we are notified that we can draw again.
|
| @@ -300,10 +300,13 @@ void CCSchedulerStateMachine::setNeedsForcedCommit()
|
| m_needsForcedCommit = true;
|
| }
|
|
|
| -void CCSchedulerStateMachine::beginFrameComplete()
|
| +void CCSchedulerStateMachine::beginFrameComplete(bool hasResourceUpdates)
|
| {
|
| ASSERT(m_commitState == COMMIT_STATE_FRAME_IN_PROGRESS);
|
| - m_commitState = COMMIT_STATE_UPDATING_RESOURCES;
|
| + if (hasResourceUpdates)
|
| + m_commitState = COMMIT_STATE_UPDATING_RESOURCES;
|
| + else
|
| + m_commitState = COMMIT_STATE_READY_TO_COMMIT;
|
| }
|
|
|
| void CCSchedulerStateMachine::beginFrameAborted()
|
| @@ -313,13 +316,12 @@ void CCSchedulerStateMachine::beginFrameAborted()
|
| setNeedsCommit();
|
| }
|
|
|
| -void CCSchedulerStateMachine::beginUpdateMoreResourcesComplete(bool morePending)
|
| +void CCSchedulerStateMachine::updateResourcesComplete()
|
| {
|
| ASSERT(m_commitState == COMMIT_STATE_UPDATING_RESOURCES);
|
| - ASSERT(m_updateMoreResourcesPending);
|
| - m_updateMoreResourcesPending = false;
|
| - if (!morePending)
|
| - m_commitState = COMMIT_STATE_READY_TO_COMMIT;
|
| + ASSERT(m_updateResourcesCompletePending);
|
| + m_updateResourcesCompletePending = false;
|
| + m_commitState = COMMIT_STATE_READY_TO_COMMIT;
|
| }
|
|
|
| void CCSchedulerStateMachine::didLoseContext()
|
|
|