| Index: src/gpu/SkGpuDevice.cpp
|
| diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp
|
| index ed80c505818d222feb5052a6cd0189865270255f..684e9b45579f06e97ec9c79c8a1582e9020b25d8 100644
|
| --- a/src/gpu/SkGpuDevice.cpp
|
| +++ b/src/gpu/SkGpuDevice.cpp
|
| @@ -575,6 +575,13 @@ inline bool skPaint2GrPaintShader(SkGpuDevice* dev,
|
| if (NULL != effect.get()) {
|
| grPaint->addColorEffect(effect);
|
| // Now setup the rest of the paint.
|
| + // If the shader's bitmap is kA8_Config, the paint's RGB is used, and
|
| + // modulated by the shader's alpha. Otherwise, the shader's RGB is used,
|
| + // modulated by the paint's alpha.
|
| + SkBitmap* bitmap = shader->getBitmap();
|
| + if (NULL != bitmap && SkBitmap::kA8_Config == bitmap->config()) {
|
| + return skPaint2GrPaintNoShader(dev, skPaint, false, true, grPaint);
|
| + }
|
| return skPaint2GrPaintNoShader(dev, skPaint, true, false, grPaint);
|
| } else {
|
| // We still don't have SkColorShader::asNewEffect() implemented.
|
|
|