Index: Source/core/svg/graphics/SVGImage.cpp |
diff --git a/Source/core/svg/graphics/SVGImage.cpp b/Source/core/svg/graphics/SVGImage.cpp |
index 04b2c5c012482b7952487802461b58f9ff4bdfad..9726286358bc77021cae9a0b118c3c3f49567fdc 100644 |
--- a/Source/core/svg/graphics/SVGImage.cpp |
+++ b/Source/core/svg/graphics/SVGImage.cpp |
@@ -245,15 +245,13 @@ void SVGImage::drawPatternForContainer(GraphicsContext* context, const FloatSize |
spacedTile.expand(repeatSpacing); |
SkPictureBuilder patternPicture(spacedTile, nullptr, context); |
- { |
+ if (!DrawingRecorder::useCachedDrawingIfPossible(patternPicture.context(), *this, DisplayItem::Type::SVGImage)) { |
DrawingRecorder patternPictureRecorder(patternPicture.context(), *this, DisplayItem::Type::SVGImage, spacedTile); |
- if (!patternPictureRecorder.canUseCachedDrawing()) { |
- // When generating an expanded tile, make sure we don't draw into the spacing area. |
- if (tile != spacedTile) |
- patternPicture.context().clip(tile); |
- SkPaint paint; |
- drawForContainer(patternPicture.context().canvas(), paint, containerSize, zoom, tile, srcRect); |
- } |
+ // When generating an expanded tile, make sure we don't draw into the spacing area. |
+ if (tile != spacedTile) |
+ patternPicture.context().clip(tile); |
+ SkPaint paint; |
+ drawForContainer(patternPicture.context().canvas(), paint, containerSize, zoom, tile, srcRect); |
} |
RefPtr<const SkPicture> tilePicture = patternPicture.endRecording(); |