Perform coverage blend with the dst in the shader when using a dst-reading xfermode.
Review URL: https://codereview.chromium.org/14233006
git-svn-id: http://skia.googlecode.com/svn/trunk@8762 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
index 356fcac..299cf3d 100644
--- a/src/gpu/SkGpuDevice.cpp
+++ b/src/gpu/SkGpuDevice.cpp
@@ -501,10 +501,8 @@
if (SkXfermode::AsNewEffectOrCoeff(mode, dev->context(), &xferEffect, &sm, &dm)) {
if (NULL != xferEffect) {
grPaint->colorStage(kXfermodeEffectIdx)->setEffect(xferEffect)->unref();
- // This may not be the right place to have this logic but we set the GPU blend to
- // src-over so that fractional coverage will be accounted for correctly.
sm = SkXfermode::kOne_Coeff;
- dm = SkXfermode::kISA_Coeff;
+ dm = SkXfermode::kZero_Coeff;
}
} else {
//SkDEBUGCODE(SkDebugf("Unsupported xfer mode.\n");)