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

Unified Diff: src/core/SkDraw.cpp

Issue 1832223002: switch xfermodes over to sk_sp (Closed) Base URL: https://skia.googlesource.com/skia.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: src/core/SkDraw.cpp
diff --git a/src/core/SkDraw.cpp b/src/core/SkDraw.cpp
index b4bcc2ea4d8104b4c8c0632aac8269a06cbe3e2f..870ed8ac4ecd768678a0cbf97d487215fd4cd7d2 100644
--- a/src/core/SkDraw.cpp
+++ b/src/core/SkDraw.cpp
@@ -32,6 +32,7 @@
#include "SkTLazy.h"
#include "SkUtils.h"
#include "SkVertState.h"
+#include "SkXfermode.h"
#include "SkBitmapProcShader.h"
#include "SkDrawProcs.h"
@@ -1902,10 +1903,11 @@ void SkDraw::drawVertices(SkCanvas::VertexMode vmode, int count,
SkASSERT(shader);
bool releaseMode = false;
if (nullptr == xmode) {
- xmode = SkXfermode::Create(SkXfermode::kModulate_Mode);
+ xmode = SkXfermode::Make(SkXfermode::kModulate_Mode).release();
releaseMode = true;
}
- p.setShader(sk_make_sp<SkComposeShader>(triShader, sk_ref_sp(shader), xmode));
+ p.setShader(SkShader::MakeComposeShader(triShader, sk_ref_sp(shader),
+ sk_ref_sp(xmode)));
if (releaseMode) {
xmode->unref();
f(malita) 2016/03/28 18:44:59 Nit: looks a bit convoluted, plus we unnecessarily
reed1 2016/03/29 16:13:52 Good suggestion. Done.
}

Powered by Google App Engine
This is Rietveld 408576698