| Index: src/images/SkImageDecoder_libbmp.cpp
|
| diff --git a/src/images/SkImageDecoder_libbmp.cpp b/src/images/SkImageDecoder_libbmp.cpp
|
| index 3aa834a6b567182e30646d89519b12f14133c21e..1dcea8ad64c38bc7b8cbc06ec9a3ad6e7b5fabc6 100644
|
| --- a/src/images/SkImageDecoder_libbmp.cpp
|
| +++ b/src/images/SkImageDecoder_libbmp.cpp
|
| @@ -19,12 +19,15 @@ class SkBMPImageDecoder : public SkImageDecoder {
|
| public:
|
| SkBMPImageDecoder() {}
|
|
|
| - virtual Format getFormat() const {
|
| + virtual Format getFormat() const SK_OVERRIDE {
|
| return kBMP_Format;
|
| }
|
|
|
| protected:
|
| - virtual bool onDecode(SkStream* stream, SkBitmap* bm, Mode mode);
|
| + virtual bool onDecode(SkStream* stream, SkBitmap* bm, Mode mode) SK_OVERRIDE;
|
| +
|
| +private:
|
| + typedef SkImageDecoder INHERITED;
|
| };
|
|
|
| ///////////////////////////////////////////////////////////////////////////////
|
| @@ -115,11 +118,18 @@ bool SkBMPImageDecoder::onDecode(SkStream* stream, SkBitmap* bm, Mode mode) {
|
|
|
| SkScaledBitmapSampler sampler(width, height, getSampleSize());
|
|
|
| - bm->setConfig(config, sampler.scaledWidth(), sampler.scaledHeight());
|
| - bm->setIsOpaque(true);
|
| if (justBounds) {
|
| + bm->setConfig(config, sampler.scaledWidth(), sampler.scaledHeight());
|
| + bm->setIsOpaque(true);
|
| return true;
|
| }
|
| + // No Bitmap reuse supported for this format
|
| + if (!bm->isNull()) {
|
| + return false;
|
| + }
|
| +
|
| + bm->setConfig(config, sampler.scaledWidth(), sampler.scaledHeight());
|
| + bm->setIsOpaque(true);
|
|
|
| if (!this->allocPixelRef(bm, NULL)) {
|
| return false;
|
|
|