| Index: src/codec/SkCodec.cpp
|
| diff --git a/src/codec/SkCodec.cpp b/src/codec/SkCodec.cpp
|
| index a49586ffeb1ecf6ff337b1dc12fd0fe8120be113..8c6ec32a896470987780a7c1dbf8cf1dc6122ba0 100644
|
| --- a/src/codec/SkCodec.cpp
|
| +++ b/src/codec/SkCodec.cpp
|
| @@ -10,6 +10,7 @@
|
| #include "SkCodec_libbmp.h"
|
| #include "SkCodec_libico.h"
|
| #include "SkCodec_libpng.h"
|
| +#include "SkCodec_wbmp.h"
|
| #include "SkStream.h"
|
|
|
| struct DecoderProc {
|
| @@ -20,7 +21,8 @@ struct DecoderProc {
|
| static const DecoderProc gDecoderProcs[] = {
|
| { SkPngCodec::IsPng, SkPngCodec::NewFromStream },
|
| { SkIcoCodec::IsIco, SkIcoCodec::NewFromStream },
|
| - { SkBmpCodec::IsBmp, SkBmpCodec::NewFromStream }
|
| + { SkBmpCodec::IsBmp, SkBmpCodec::NewFromStream },
|
| + { SkWbmpCodec::IsWbmp, SkWbmpCodec::NewFromStream }
|
| };
|
|
|
| SkCodec* SkCodec::NewFromStream(SkStream* stream) {
|
| @@ -56,10 +58,13 @@ SkCodec::SkCodec(const SkImageInfo& info, SkStream* stream)
|
| , fNeedsRewind(false)
|
| {}
|
|
|
| -bool SkCodec::rewindIfNeeded() {
|
| +bool SkCodec::rewindIfNeeded(bool* didTryToRewind) {
|
| // Store the value of fNeedsRewind so we can update it. Next read will
|
| // require a rewind.
|
| const bool neededRewind = fNeedsRewind;
|
| + if (didTryToRewind) {
|
| + *didTryToRewind = neededRewind;
|
| + }
|
| fNeedsRewind = true;
|
| return !neededRewind || fStream->rewind();
|
| }
|
|
|