Index: src/core/SkBlitter_ARGB32.cpp |
diff --git a/src/core/SkBlitter_ARGB32.cpp b/src/core/SkBlitter_ARGB32.cpp |
index aada0586a4b2dfb0bd7e2e9ae221b613b41138d1..ea0554d66eaaa8aac3f1c9788732da837641e74a 100644 |
--- a/src/core/SkBlitter_ARGB32.cpp |
+++ b/src/core/SkBlitter_ARGB32.cpp |
@@ -339,8 +339,7 @@ SkARGB32_Shader_Blitter::SkARGB32_Shader_Blitter(const SkPixmap& device, |
{ |
fBuffer = (SkPMColor*)sk_malloc_throw(device.width() * (sizeof(SkPMColor))); |
- fXfermode = paint.getXfermode(); |
- SkSafeRef(fXfermode); |
+ fXfermode = SkXfermode::Peek(paint.getBlendMode()); |
int flags = 0; |
if (!(shaderContext->getFlags() & SkShader::kOpaqueAlpha_Flag)) { |
@@ -370,7 +369,6 @@ SkARGB32_Shader_Blitter::SkARGB32_Shader_Blitter(const SkPixmap& device, |
} |
SkARGB32_Shader_Blitter::~SkARGB32_Shader_Blitter() { |
- SkSafeUnref(fXfermode); |
sk_free(fBuffer); |
} |