Index: src/gpu/GrDistanceFieldTextContext.cpp |
diff --git a/src/gpu/GrDistanceFieldTextContext.cpp b/src/gpu/GrDistanceFieldTextContext.cpp |
index 99aed573b609e78462349eb86f24764eba38cb95..4f99bb4de1e9001dbb95d26cf8d954f2f6adb731 100755 |
--- a/src/gpu/GrDistanceFieldTextContext.cpp |
+++ b/src/gpu/GrDistanceFieldTextContext.cpp |
@@ -631,9 +631,11 @@ void GrDistanceFieldTextContext::flush() { |
// Set draw state |
if (fUseLCDText) { |
GrColor colorNoPreMul = skcolor_to_grcolor_nopremultiply(filteredColor); |
- if (kOne_GrBlendCoeff != fPaint.getSrcBlendCoeff() || |
- kISA_GrBlendCoeff != fPaint.getDstBlendCoeff() || |
- fPaint.numColorStages()) { |
+ |
+ // TODO: move supportsRGBCoverage check to setupCoverageEffect and only add LCD |
+ // processor if the xp can support it. For now we will simply assume that if |
+ // fUseLCDText is true, then we have a known color output. |
+ if (!drawState.getXPFactory()->supportsRGBCoverage(0, kRGBA_GrColorComponentFlags)) { |
SkDebugf("LCD Text will not draw correctly.\n"); |
} |
SkASSERT(!drawState.hasColorVertexAttribute()); |