Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(647)

Unified Diff: third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp

Issue 1814473003: Revert of Add sk_sp helpers and switch Blink SkShader clients to the new APIs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
diff --git a/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp b/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
index 8eafef9ea1f40ded54248f13e26e673c7a811b9e..cfff39bdf3c995aacf7a0f325facf0fe58144ecb 100644
--- a/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
+++ b/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
@@ -286,14 +286,16 @@
SkPaint paint;
drawForContainer(patternPicture.context().canvas(), paint, containerSize, zoom, tile, srcRect, url);
}
- RefPtr<SkPicture> tilePicture = patternPicture.endRecording();
+ RefPtr<const SkPicture> tilePicture = patternPicture.endRecording();
SkMatrix patternTransform;
patternTransform.setTranslate(phase.x() + spacedTile.x(), phase.y() + spacedTile.y());
+ RefPtr<SkShader> patternShader = adoptRef(SkShader::CreatePictureShader(
+ tilePicture.get(), SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode,
+ &patternTransform, nullptr));
SkPaint paint;
- paint.setShader(SkShader::MakePictureShader(adoptSkSp(tilePicture.release()),
- SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode, &patternTransform, nullptr));
+ paint.setShader(patternShader.get());
paint.setXfermodeMode(compositeOp);
paint.setColorFilter(context.colorFilter());
context.drawRect(dstRect, paint);

Powered by Google App Engine
This is Rietveld 408576698