Index: src/effects/SkAlphaThresholdFilter.cpp |
diff --git a/src/effects/SkAlphaThresholdFilter.cpp b/src/effects/SkAlphaThresholdFilter.cpp |
index 7215aa83723ec774e0ef233f16e649ac3fd4c262..823c3028c51e76df00aa7c188f41a3eb5c0b5be6 100644 |
--- a/src/effects/SkAlphaThresholdFilter.cpp |
+++ b/src/effects/SkAlphaThresholdFilter.cpp |
@@ -229,12 +229,11 @@ bool AlphaThresholdEffect::onIsEqual(const GrProcessor& sBase) const { |
} |
void AlphaThresholdEffect::onComputeInvariantOutput(InvariantOutput* inout) const { |
- if (inout->isOpaque() && GrPixelConfigIsOpaque(this->texture(0)->config())) { |
- inout->fValidFlags = kA_GrColorComponentFlag; |
+ if (GrPixelConfigIsOpaque(this->texture(0)->config()) && fOuterThreshold >= 1.f) { |
+ inout->mulByUnknownOpaqueColor(); |
} else { |
- inout->fValidFlags = 0; |
+ inout->mulByUnknownColor(); |
} |
- inout->fIsSingleComponent = false; |
} |
#endif |