| Index: src/gpu/GrDrawState.cpp
|
| diff --git a/src/gpu/GrDrawState.cpp b/src/gpu/GrDrawState.cpp
|
| index 591e157129af4aa7846cda18bf949ec4f8e04861..a3850b087e7abcabbdcc45ce65c07124a29bc3c2 100644
|
| --- a/src/gpu/GrDrawState.cpp
|
| +++ b/src/gpu/GrDrawState.cpp
|
| @@ -371,6 +371,13 @@ GrDrawState::BlendOptFlags GrDrawState::getBlendOpts(bool forceCoverage,
|
| return kCoverageAsAlpha_BlendOptFlag;
|
| }
|
| }
|
| + if (kOne_GrBlendCoeff == *srcCoeff &&
|
| + kZero_GrBlendCoeff == *dstCoeff &&
|
| + this->willEffectReadDstColor()) {
|
| + // In this case the shader will fully resolve the color, coverage, and dst and we don't
|
| + // need blending.
|
| + return kDisableBlend_BlendOptFlag;
|
| + }
|
| return kNone_BlendOpt;
|
| }
|
|
|
|
|