Add nullcheck in nsSVGUtils::PaintFrameWithEffects

Some SVGs define a mask but an invalid mask frame. Check to make sure
we have a `maskFrame` that isn't null before trying to use it.
This resolves #1034
This commit is contained in:
wolfbeast 2019-04-06 22:12:00 +02:00 committed by Roy Tam
commit 59d7005617

View file

@ -734,9 +734,12 @@ nsSVGUtils::PaintFrameWithEffects(nsIFrame *aFrame,
RefPtr<SourceSurface> maskSurface;
if (maskUsage.shouldGenerateMaskLayer) {
maskSurface =
maskFrame->GetMaskForMaskedFrame(&aContext, aFrame, aTransform,
maskUsage.opacity, &maskTransform);
// Make sure we have a mask frame.
if (maskFrame) {
maskSurface =
maskFrame->GetMaskForMaskedFrame(&aContext, aFrame, aTransform,
maskUsage.opacity, &maskTransform);
}
if (!maskSurface) {
// Entire surface is clipped out.