From f94049aee42bcf6a984d8fddd72731a2a52202ba Mon Sep 17 00:00:00 2001 From: Brian Birtles Date: Tue, 11 Nov 2014 11:01:28 +0900 Subject: [PATCH] Bug 1095315 - Fix the order of applying pending updates and getting the effective transform in BasicLayerManager; r=mattwoodrow --- gfx/layers/basic/BasicLayerManager.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gfx/layers/basic/BasicLayerManager.cpp b/gfx/layers/basic/BasicLayerManager.cpp index e3bd29c6d1b2..992184dc8b0b 100644 --- a/gfx/layers/basic/BasicLayerManager.cpp +++ b/gfx/layers/basic/BasicLayerManager.cpp @@ -485,6 +485,12 @@ BasicLayerManager::EndTransactionInternal(DrawPaintedLayerCallback aCallback, mTransactionIncomplete = false; if (mRoot) { + if (aFlags & END_NO_COMPOSITE) { + // Apply pending tree updates before recomputing effective + // properties. + mRoot->ApplyPendingUpdatesToSubtree(); + } + // Need to do this before we call ApplyDoubleBuffering, // which depends on correct effective transforms if (mTarget) { @@ -499,12 +505,6 @@ BasicLayerManager::EndTransactionInternal(DrawPaintedLayerCallback aCallback, if (mRoot->GetMaskLayer()) { ToData(mRoot->GetMaskLayer())->Validate(aCallback, aCallbackData, nullptr); } - - if (aFlags & END_NO_COMPOSITE) { - // Apply pending tree updates before recomputing effective - // properties. - mRoot->ApplyPendingUpdatesToSubtree(); - } } if (mTarget && mRoot &&