From 9eb9f6f8cbbbd87d45da8071aa54cb066a797723 Mon Sep 17 00:00:00 2001 From: John Reck Date: Thu, 21 Aug 2014 11:23:05 -0700 Subject: Don't run animators in buildLayer Bug: 17172689 Change-Id: Ib47d589c002543327fa336718440f9f8c95524e0 --- libs/hwui/RenderNode.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'libs/hwui/RenderNode.cpp') diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp index 0db6198e7ec2..898b66d5dd35 100644 --- a/libs/hwui/RenderNode.cpp +++ b/libs/hwui/RenderNode.cpp @@ -216,7 +216,10 @@ void RenderNode::prepareTreeImpl(TreeInfo& info) { if (info.mode == TreeInfo::MODE_FULL) { pushStagingPropertiesChanges(info); } - uint32_t animatorDirtyMask = mAnimatorManager.animate(info); + uint32_t animatorDirtyMask = 0; + if (CC_LIKELY(info.runAnimations)) { + animatorDirtyMask = mAnimatorManager.animate(info); + } prepareLayer(info, animatorDirtyMask); if (info.mode == TreeInfo::MODE_FULL) { pushStagingDisplayListChanges(info); @@ -231,7 +234,9 @@ void RenderNode::pushStagingPropertiesChanges(TreeInfo& info) { // Push the animators first so that setupStartValueIfNecessary() is called // before properties() is trampled by stagingProperties(), as they are // required by some animators. - mAnimatorManager.pushStaging(info); + if (CC_LIKELY(info.runAnimations)) { + mAnimatorManager.pushStaging(info); + } if (mDirtyPropertyFields) { mDirtyPropertyFields = 0; damageSelf(info); -- cgit v1.2.3-59-g8ed1b