diff options
author | 2017-07-23 15:30:02 -0400 | |
---|---|---|
committer | 2017-07-25 15:35:23 +0000 | |
commit | ede7bac43fbc69b9fdf1c178890ba6353f5bb140 (patch) | |
tree | dccdba46e7abf125e2f90e6dc08eca00ad9cb09b /src/codec/SkGifCodec.cpp | |
parent | fa3ed03720b5083afd3620c9239863f05f2eedbd (diff) |
use unique_ptr for codec factories
Will need guards for android (at least)
Bug: skia:
Change-Id: I2bb8e656997984489ef1f2e41cd3d301c4e7b947
Reviewed-on: https://skia-review.googlesource.com/26040
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/codec/SkGifCodec.cpp')
-rw-r--r-- | src/codec/SkGifCodec.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/codec/SkGifCodec.cpp b/src/codec/SkGifCodec.cpp index 412b8ff1f7..d54cbd558e 100644 --- a/src/codec/SkGifCodec.cpp +++ b/src/codec/SkGifCodec.cpp @@ -35,6 +35,7 @@ #include "SkColorPriv.h" #include "SkColorTable.h" #include "SkGifCodec.h" +#include "SkMakeUnique.h" #include "SkRasterPipeline.h" #include "SkStream.h" #include "SkSwizzler.h" @@ -68,8 +69,9 @@ static SkCodec::Result gif_error(const char* msg, SkCodec::Result result = SkCod return result; } -SkCodec* SkGifCodec::NewFromStream(SkStream* stream, Result* result) { - std::unique_ptr<SkGifImageReader> reader(new SkGifImageReader(stream)); +std::unique_ptr<SkCodec> SkGifCodec::MakeFromStream(std::unique_ptr<SkStream> stream, + Result* result) { + std::unique_ptr<SkGifImageReader> reader(new SkGifImageReader(std::move(stream))); *result = reader->parse(SkGifImageReader::SkGIFSizeQuery); if (*result != kSuccess) { return nullptr; @@ -102,7 +104,7 @@ SkCodec* SkGifCodec::NewFromStream(SkStream* stream, Result* result) { const auto imageInfo = SkImageInfo::Make(reader->screenWidth(), reader->screenHeight(), kN32_SkColorType, alphaType, SkColorSpace::MakeSRGB()); - return new SkGifCodec(encodedInfo, imageInfo, reader.release()); + return std::unique_ptr<SkCodec>(new SkGifCodec(encodedInfo, imageInfo, reader.release())); } bool SkGifCodec::onRewind() { |