Index: src/gpu/effects/GrTextureDomain.cpp |
diff --git a/src/gpu/effects/GrTextureDomain.cpp b/src/gpu/effects/GrTextureDomain.cpp |
index db3ef2cd98715064211c55dfefa6ac66576fc4a0..de552c0ac9665472492c3ff63cf82787837d18ed 100644 |
--- a/src/gpu/effects/GrTextureDomain.cpp |
+++ b/src/gpu/effects/GrTextureDomain.cpp |
@@ -271,7 +271,11 @@ bool GrTextureDomainEffect::onIsEqual(const GrFragmentProcessor& sBase) const { |
void GrTextureDomainEffect::onComputeInvariantOutput(GrInvariantOutput* inout) const { |
if (GrTextureDomain::kDecal_Mode == fTextureDomain.mode()) { // TODO: helper |
- inout->mulByUnknownColor(); |
+ if (GrPixelConfigIsAlphaOnly(this->texture(0)->config())) { |
+ inout->mulByUnknownAlpha(); |
+ } else { |
+ inout->mulByUnknownColor(); |
+ } |
} else { |
this->updateInvariantOutputForModulation(inout); |
} |