| Index: src/images/SkImageDecoder_libgif.cpp
|
| diff --git a/src/images/SkImageDecoder_libgif.cpp b/src/images/SkImageDecoder_libgif.cpp
|
| index f81c601093851a9ed77611737572167f4ee98211..434a296d5e86405f3d6feadf2a4e515bc39526f1 100644
|
| --- a/src/images/SkImageDecoder_libgif.cpp
|
| +++ b/src/images/SkImageDecoder_libgif.cpp
|
| @@ -201,11 +201,18 @@ bool SkGIFImageDecoder::onDecode(SkStream* sk_stream, SkBitmap* bm, Mode mode) {
|
| width, height)) {
|
| return error_return(gif, *bm, "chooseFromOneChoice");
|
| }
|
| -
|
| - bm->setConfig(SkBitmap::kIndex8_Config, width, height);
|
| - if (SkImageDecoder::kDecodeBounds_Mode == mode)
|
| +
|
| + if (SkImageDecoder::kDecodeBounds_Mode == mode) {
|
| + bm->setConfig(SkBitmap::kIndex8_Config, width, height);
|
| return true;
|
| + }
|
|
|
| + // No Bitmap reuse supported for this format
|
| + if (!bm->isNull()) {
|
| + return false;
|
| + }
|
| +
|
| + bm->setConfig(SkBitmap::kIndex8_Config, width, height);
|
| SavedImage* image = &gif->SavedImages[gif->ImageCount-1];
|
| const GifImageDesc& desc = image->ImageDesc;
|
|
|
|
|