diff options
author | Mike Klein <mtklein@google.com> | 2017-08-17 13:33:56 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-08-17 13:34:07 +0000 |
commit | db68a426b6ba3a0fa1cace25ac306037eb7413a6 (patch) | |
tree | 6a928b31410abb8d866ed8c5289d7243e5020155 /src/codec/SkCodec.cpp | |
parent | be1b071753538584c34257ce6eb17dcb78ef7d35 (diff) |
Revert "skia: add heif decoding support"
This reverts commit c2a954290dc3888f877a047098b84c24363895fb.
Reason for revert: both Android and Google3 rolls cannot compile. Android cannot cast std::unique_ptr<T> to T*, Google3 cannot find HeifDecoderAPI.h.
Original change's description:
> skia: add heif decoding support
>
> Bug: b/64077740
> Change-Id: I11e0243bcc4c21c0aa5aa29a719dd0fcba7ae6f7
> Reviewed-on: https://skia-review.googlesource.com/35123
> Reviewed-by: Chong Zhang <chz@google.com>
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Chong Zhang <chz@google.com>
> Commit-Queue: Leon Scroggins <scroggo@google.com>
TBR=scroggo@google.com,chz@google.com
Change-Id: Id98f025e63daec50408186000453d1695170f7a8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/64077740
Reviewed-on: https://skia-review.googlesource.com/35741
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Diffstat (limited to 'src/codec/SkCodec.cpp')
-rw-r--r-- | src/codec/SkCodec.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/codec/SkCodec.cpp b/src/codec/SkCodec.cpp index 7dc10854d2..2b6108250c 100644 --- a/src/codec/SkCodec.cpp +++ b/src/codec/SkCodec.cpp @@ -23,7 +23,6 @@ #include "SkStream.h" #include "SkWbmpCodec.h" #include "SkWebpCodec.h" -#include "SkHeifCodec.h" struct DecoderProc { bool (*IsFormat)(const void*, size_t); @@ -42,12 +41,13 @@ static const DecoderProc gDecoderProcs[] = { { SkIcoCodec::IsIco, SkIcoCodec::MakeFromStream }, #endif { SkBmpCodec::IsBmp, SkBmpCodec::MakeFromStream }, - { SkWbmpCodec::IsWbmp, SkWbmpCodec::MakeFromStream }, -#ifdef SK_HAS_HEIF_LIBRARY - { SkHeifCodec::IsHeif, SkHeifCodec::MakeFromStream }, -#endif + { SkWbmpCodec::IsWbmp, SkWbmpCodec::MakeFromStream } }; +size_t SkCodec::MinBufferedBytesNeeded() { + return WEBP_VP8_HEADER_SIZE; +} + std::unique_ptr<SkCodec> SkCodec::MakeFromStream(std::unique_ptr<SkStream> stream, Result* outResult, SkPngChunkReader* chunkReader) { Result resultStorage; @@ -60,7 +60,9 @@ std::unique_ptr<SkCodec> SkCodec::MakeFromStream(std::unique_ptr<SkStream> strea return nullptr; } - constexpr size_t bytesToRead = MinBufferedBytesNeeded(); + // 14 is enough to read all of the supported types. + const size_t bytesToRead = 14; + SkASSERT(bytesToRead <= MinBufferedBytesNeeded()); char buffer[bytesToRead]; size_t bytesRead = stream->peek(buffer, bytesToRead); |