Merge remote-tracking branch 'origin/master' into custom

This commit is contained in:
Roy Tam 2019-04-13 07:34:39 +08:00
commit 2b48a6c6ee
48 changed files with 1596 additions and 1006 deletions

View file

@ -685,7 +685,7 @@ nsSVGUtils::PaintFrameWithEffects(nsIFrame *aFrame,
bool isOK = effectProperties.HasNoFilterOrHasValidFilter();
nsSVGClipPathFrame *clipPathFrame = effectProperties.GetClipPathFrame(&isOK);
nsSVGMaskFrame *maskFrame = effectProperties.GetFirstMaskFrame(&isOK);
if (!isOK || !maskFrame) {
if (!isOK) {
// Some resource is invalid. We shouldn't paint anything.
return DrawResult::SUCCESS;
}
@ -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.