Index: Source/core/paint/DeprecatedPaintLayer.cpp |
diff --git a/Source/core/paint/DeprecatedPaintLayer.cpp b/Source/core/paint/DeprecatedPaintLayer.cpp |
index 31ddcd62dea712c99fea10540d0605e17a3771f6..8e4c167af218d24dba9db17b5e09ded6ba62f9f2 100644 |
--- a/Source/core/paint/DeprecatedPaintLayer.cpp |
+++ b/Source/core/paint/DeprecatedPaintLayer.cpp |
@@ -1166,8 +1166,7 @@ LayoutRect DeprecatedPaintLayer::transparencyClipBox(const DeprecatedPaintLayer* |
IntPoint pixelSnappedDelta = roundedIntPoint(delta); |
TransformationMatrix transform; |
transform.translate(pixelSnappedDelta.x(), pixelSnappedDelta.y()); |
- if (layer->transform()) |
- transform = transform * *layer->transform(); |
+ transform = transform * *layer->transform(); |
// We don't use fragment boxes when collecting a transformed layer's bounding box, since it always |
// paints unfragmented. |
@@ -2482,7 +2481,7 @@ LayoutRect DeprecatedPaintLayer::boundingBoxForCompositing(const DeprecatedPaint |
result.expand(m_layoutObject->style()->filterOutsets()); |
} |
- if (transform() && (paintsWithTransform(PaintBehaviorNormal) || options == ApplyBoundsChickenEggHacks)) |
+ if (paintsWithTransform(PaintBehaviorNormal) || (options == ApplyBoundsChickenEggHacks && transform())) |
result = transform()->mapRect(result); |
if (enclosingPaginationLayer()) { |
@@ -2604,7 +2603,7 @@ bool DeprecatedPaintLayer::hasCompositedClippingMask() const |
bool DeprecatedPaintLayer::paintsWithTransform(PaintBehavior paintBehavior) const |
{ |
- return (transform() || layoutObject()->style()->position() == FixedPosition) && ((paintBehavior & PaintBehaviorFlattenCompositingLayers) || compositingState() != PaintsIntoOwnBacking); |
+ return transform() && ((paintBehavior & PaintBehaviorFlattenCompositingLayers) || compositingState() != PaintsIntoOwnBacking); |
} |
bool DeprecatedPaintLayer::backgroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect) const |