зеркало из https://github.com/mozilla/gecko-dev.git
Bug 931305 - Avoid bailing out half way through a gradient fill. r=jmuizelaar
This commit is contained in:
Родитель
240d85fb1d
Коммит
831d5edc75
|
@ -2497,7 +2497,6 @@ nsCSSRendering::PaintGradient(nsPresContext* aPresContext,
|
||||||
// tile with the overall area we're supposed to be filling
|
// tile with the overall area we're supposed to be filling
|
||||||
gfxRect fillRect =
|
gfxRect fillRect =
|
||||||
forceRepeatToCoverTiles ? areaToFill : tileRect.Intersect(areaToFill);
|
forceRepeatToCoverTiles ? areaToFill : tileRect.Intersect(areaToFill);
|
||||||
ctx->NewPath();
|
|
||||||
// Try snapping the fill rect. Snap its top-left and bottom-right
|
// Try snapping the fill rect. Snap its top-left and bottom-right
|
||||||
// independently to preserve the orientation.
|
// independently to preserve the orientation.
|
||||||
gfxPoint snappedFillRectTopLeft = fillRect.TopLeft();
|
gfxPoint snappedFillRectTopLeft = fillRect.TopLeft();
|
||||||
|
@ -2523,6 +2522,7 @@ nsCSSRendering::PaintGradient(nsPresContext* aPresContext,
|
||||||
snappedFillRectBottomRight);
|
snappedFillRectBottomRight);
|
||||||
ctx->SetMatrix(transform);
|
ctx->SetMatrix(transform);
|
||||||
}
|
}
|
||||||
|
ctx->NewPath();
|
||||||
ctx->Rectangle(fillRect);
|
ctx->Rectangle(fillRect);
|
||||||
ctx->Translate(tileRect.TopLeft());
|
ctx->Translate(tileRect.TopLeft());
|
||||||
ctx->SetPattern(gradientPattern);
|
ctx->SetPattern(gradientPattern);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче