Index: Source/core/rendering/RenderBox.cpp |
diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp |
index abf97e337275b9b818e57e6032ed1489f7674130..ec4be3cec147178789c84266dc793726984fc6ee 100644 |
--- a/Source/core/rendering/RenderBox.cpp |
+++ b/Source/core/rendering/RenderBox.cpp |
@@ -1630,11 +1630,16 @@ void RenderBox::imageChanged(WrappedImagePtr image, const IntRect*) |
return; |
} |
+ ShapeValue* shapeOutsideValue = style()->shapeOutside(); |
+ if (!frameView()->isInPerformLayout() && isFloating() && shapeOutsideValue && shapeOutsideValue->image() && shapeOutsideValue->image()->data() == image) { |
+ ShapeOutsideInfo::ensureInfo(this)->dirtyShapeSize(); |
+ markShapeOutsideDependentsForLayout(); |
+ } |
+ |
bool didFullRepaint = repaintLayerRectsForImage(image, style()->backgroundLayers(), true); |
if (!didFullRepaint) |
repaintLayerRectsForImage(image, style()->maskLayers(), false); |
- |
if (hasLayer() && layer()->hasCompositedMask() && layersUseImage(image, style()->maskLayers())) |
layer()->contentChanged(MaskImageChanged); |
} |