| Index: src/gpu/GrAtlasTextContext.cpp
|
| diff --git a/src/gpu/GrAtlasTextContext.cpp b/src/gpu/GrAtlasTextContext.cpp
|
| index cc9bde25fd67e0088cfefa0697126939c69bb883..c2c76edec31dbf0de21f7a940ed35ac07d4a975d 100644
|
| --- a/src/gpu/GrAtlasTextContext.cpp
|
| +++ b/src/gpu/GrAtlasTextContext.cpp
|
| @@ -1493,10 +1493,14 @@
|
| texture));
|
| } else {
|
| GrTextureParams params(SkShader::kClamp_TileMode, GrTextureParams::kNone_FilterMode);
|
| +
|
| + // This will be ignored in the non A8 case
|
| + bool opaqueVertexColors = GrColorIsOpaque(this->color());
|
| gp.reset(GrBitmapTextGeoProc::Create(this->color(),
|
| texture,
|
| params,
|
| fMaskFormat,
|
| + opaqueVertexColors,
|
| localMatrix));
|
| }
|
|
|
| @@ -1959,6 +1963,7 @@
|
| flags);
|
| } else {
|
| flags |= kColorAttr_DistanceFieldEffectFlag;
|
| + bool opaque = GrColorIsOpaque(color);
|
| #ifdef SK_GAMMA_APPLY_TO_A8
|
| U8CPU lum = SkColorSpaceLuminance::computeLuminance(fGamma, filteredColor);
|
| float correction = (*fDistanceAdjustTable)[lum >> kDistanceAdjustLumShift];
|
| @@ -1967,13 +1972,15 @@
|
| texture,
|
| params,
|
| correction,
|
| - flags);
|
| + flags,
|
| + opaque);
|
| #else
|
| return GrDistanceFieldA8TextGeoProc::Create(color,
|
| viewMatrix,
|
| texture,
|
| params,
|
| - flags);
|
| + flags,
|
| + opaque);
|
| #endif
|
| }
|
|
|
|
|