Chromium Code Reviews| Index: src/ports/SkImageDecoder_CG.cpp |
| diff --git a/src/ports/SkImageDecoder_CG.cpp b/src/ports/SkImageDecoder_CG.cpp |
| index 8956acaebc8bd0fe3dd5300d77af02b662ec90e6..3f850b544dabf288ff64eddcb9951bb5d416aa48 100644 |
| --- a/src/ports/SkImageDecoder_CG.cpp |
| +++ b/src/ports/SkImageDecoder_CG.cpp |
| @@ -104,11 +104,13 @@ bool SkImageDecoder_CG::onDecode(SkStream* stream, SkBitmap* bm, Mode mode) { |
| case kCGImageAlphaNoneSkipLast: |
| case kCGImageAlphaNoneSkipFirst: |
| SkASSERT(SkBitmap::ComputeIsOpaque(*bm)); |
| - bm->setIsOpaque(true); |
| + bm->setAlphaType(kOpaque_SkAlphaType); |
| break; |
| default: |
| // we don't know if we're opaque or not, so compute it. |
| - bm->computeAndSetOpaquePredicate(); |
|
scroggo
2013/09/30 22:20:04
Should we remove this function entirely?
|
| + if (SkBitmap::ComputeIsOpaque(*bm)) { |
| + bm->setAlphaType(kOpaque_SkAlphaType); |
| + } |
| } |
| if (!bm->isOpaque() && this->getRequireUnpremultipliedColors()) { |
| // CGBitmapContext does not support unpremultiplied, so the image has been premultiplied. |
| @@ -119,6 +121,7 @@ bool SkImageDecoder_CG::onDecode(SkStream* stream, SkBitmap* bm, Mode mode) { |
| *addr = unpremultiply_pmcolor(*addr); |
| } |
| } |
| + bm->setAlphaType(kUnpremul_SkAlphaType); |
| } |
| bm->unlockPixels(); |
| return true; |