Index: src/gpu/SkGr.cpp |
diff --git a/src/gpu/SkGr.cpp b/src/gpu/SkGr.cpp |
index 411b5b2b60322249213f83d322005d460f1202fa..954bb808524243d181ed5066b6d84c5ef7b29449 100644 |
--- a/src/gpu/SkGr.cpp |
+++ b/src/gpu/SkGr.cpp |
@@ -489,13 +489,8 @@ static inline bool skpaint_to_grpaint_impl(GrContext* context, |
SkXfermode* mode = skPaint.getXfermode(); |
GrXPFactory* xpFactory = nullptr; |
- if (!SkXfermode::AsXPFactory(mode, &xpFactory)) { |
- // Fall back to src-over |
- // return false here? |
- xpFactory = GrPorterDuffXPFactory::Create(SkXfermode::kSrcOver_Mode); |
- } |
- SkASSERT(xpFactory); |
- grPaint->setXPFactory(xpFactory)->unref(); |
+ SkXfermode::AsXPFactory(mode, &xpFactory); |
+ SkSafeUnref(grPaint->setXPFactory(xpFactory)); |
#ifndef SK_IGNORE_GPU_DITHER |
if (skPaint.isDither() && grPaint->numColorFragmentProcessors() > 0) { |