Bug 818025 - Fix BasicTiledThebesLayer fast path. r=bgirard

When disabling low precision and progressive rendering, BasicTiledThebesLayer
takes a fast path that avoids a lot of region operations, transformation and
iterations. Unfortunately, it also forgets to check if the mask layer exists
before trying to draw it, which causes an immediate crash in most cases.
This commit is contained in:
Chris Lord 2012-12-04 15:24:24 +00:00
parent e6ad33709d
commit a961c59e8b

View File

@ -559,7 +559,9 @@ BasicTiledThebesLayer::PaintThebes(gfxContext* aContext,
mTiledBuffer.PaintThebes(this, mValidRegion, invalidRegion, aCallback, aCallbackData);
mTiledBuffer.ReadLock();
static_cast<BasicImplData*>(aMaskLayer->ImplData())->Paint(aContext, nullptr);
if (aMaskLayer) {
static_cast<BasicImplData*>(aMaskLayer->ImplData())->Paint(aContext, nullptr);
}
// Create a heap copy owned and released by the compositor. This is needed
// since we're sending this over an async message and content needs to be