From 3b4fe0ca10c6ec7c6b6e4d01e997e4792ec329ee Mon Sep 17 00:00:00 2001 From: Kartikaya Gupta Date: Tue, 17 Feb 2015 16:30:53 -0500 Subject: [PATCH] Back out bug 1121871 as it is an improper fix and creates regressions like bug 1132741. r=BenWa (on IRC) --- gfx/layers/client/ClientTiledPaintedLayer.cpp | 30 +++++-------------- 1 file changed, 7 insertions(+), 23 deletions(-) diff --git a/gfx/layers/client/ClientTiledPaintedLayer.cpp b/gfx/layers/client/ClientTiledPaintedLayer.cpp index da0ff3cd4a81..5189e1e23271 100644 --- a/gfx/layers/client/ClientTiledPaintedLayer.cpp +++ b/gfx/layers/client/ClientTiledPaintedLayer.cpp @@ -418,36 +418,20 @@ ClientTiledPaintedLayer::RenderLayer() ToClientLayer(GetMaskLayer())->RenderLayer(); } - // For more complex cases we need to calculate a bunch of metrics before we - // can do the paint. - BeginPaint(); - if (mPaintData.mPaintFinished) { - return; - } - // In some cases we can take a fast path and just be done with it. if (UseFastPath()) { TILING_LOG("TILING %p: Taking fast-path\n", this); mValidRegion = neededRegion; - - // Make sure that tiles that fall outside of the visible region or outside of the - // critical displayport are discarded on the first update. Also make sure that we - // only draw stuff inside the critical displayport on the first update. - if (!mPaintData.mCriticalDisplayPort.IsEmpty()) { - mValidRegion.And(mValidRegion, LayerIntRect::ToUntyped(mPaintData.mCriticalDisplayPort)); - invalidRegion.And(invalidRegion, LayerIntRect::ToUntyped(mPaintData.mCriticalDisplayPort)); - } - - if (invalidRegion.IsEmpty()) { - EndPaint(); - return; - } - - mContentClient->mTiledBuffer.SetFrameResolution(mPaintData.mResolution); mContentClient->mTiledBuffer.PaintThebes(mValidRegion, invalidRegion, callback, data); ClientManager()->Hold(this); mContentClient->UseTiledLayerBuffer(TiledContentClient::TILED_BUFFER); - EndPaint(); + return; + } + + // For more complex cases we need to calculate a bunch of metrics before we + // can do the paint. + BeginPaint(); + if (mPaintData.mPaintFinished) { return; }