| Index: src/codec/SkPngCodec.cpp
|
| diff --git a/src/codec/SkPngCodec.cpp b/src/codec/SkPngCodec.cpp
|
| index 1b51432e5ec1c1bb143ca69972d08968ce1a8c5f..5e155dab7ec417ab4be1796c2dd02c467ccc3e6f 100644
|
| --- a/src/codec/SkPngCodec.cpp
|
| +++ b/src/codec/SkPngCodec.cpp
|
| @@ -5,10 +5,11 @@
|
| * found in the LICENSE file.
|
| */
|
|
|
| +#include "SkBitmap.h"
|
| #include "SkCodecPriv.h"
|
| #include "SkColorPriv.h"
|
| +#include "SkColorSpace.h"
|
| #include "SkColorTable.h"
|
| -#include "SkBitmap.h"
|
| #include "SkMath.h"
|
| #include "SkOpts.h"
|
| #include "SkPngCodec.h"
|
| @@ -176,7 +177,7 @@ static float png_fixed_point_to_float(png_fixed_point x) {
|
| // Returns a colorSpace object that represents any color space information in
|
| // the encoded data. If the encoded data contains no color space, this will
|
| // return NULL.
|
| -SkColorSpace* read_color_space(png_structp png_ptr, png_infop info_ptr) {
|
| +sk_sp<SkColorSpace> read_color_space(png_structp png_ptr, png_infop info_ptr) {
|
|
|
| // First check for an ICC profile
|
| png_bytep profile;
|
| @@ -422,7 +423,7 @@ static bool read_header(SkStream* stream, SkPngChunkReader* chunkReader,
|
|
|
| SkPngCodec::SkPngCodec(const SkImageInfo& info, SkStream* stream, SkPngChunkReader* chunkReader,
|
| png_structp png_ptr, png_infop info_ptr, int bitDepth, int numberPasses,
|
| - SkColorSpace* colorSpace)
|
| + sk_sp<SkColorSpace> colorSpace)
|
| : INHERITED(info, stream, colorSpace)
|
| , fPngChunkReader(SkSafeRef(chunkReader))
|
| , fPng_ptr(png_ptr)
|
| @@ -634,7 +635,7 @@ class SkPngScanlineDecoder : public SkPngCodec {
|
| public:
|
| SkPngScanlineDecoder(const SkImageInfo& srcInfo, SkStream* stream,
|
| SkPngChunkReader* chunkReader, png_structp png_ptr, png_infop info_ptr, int bitDepth,
|
| - SkColorSpace* colorSpace)
|
| + sk_sp<SkColorSpace> colorSpace)
|
| : INHERITED(srcInfo, stream, chunkReader, png_ptr, info_ptr, bitDepth, 1, colorSpace)
|
| , fSrcRow(nullptr)
|
| {}
|
| @@ -700,7 +701,7 @@ class SkPngInterlacedScanlineDecoder : public SkPngCodec {
|
| public:
|
| SkPngInterlacedScanlineDecoder(const SkImageInfo& srcInfo, SkStream* stream,
|
| SkPngChunkReader* chunkReader, png_structp png_ptr, png_infop info_ptr,
|
| - int bitDepth, int numberPasses, SkColorSpace* colorSpace)
|
| + int bitDepth, int numberPasses, sk_sp<SkColorSpace> colorSpace)
|
| : INHERITED(srcInfo, stream, chunkReader, png_ptr, info_ptr, bitDepth, numberPasses,
|
| colorSpace)
|
| , fHeight(-1)
|
| @@ -833,7 +834,7 @@ SkCodec* SkPngCodec::NewFromStream(SkStream* stream, SkPngChunkReader* chunkRead
|
| return nullptr;
|
| }
|
|
|
| - SkAutoTUnref<SkColorSpace> colorSpace(read_color_space(png_ptr, info_ptr));
|
| + auto colorSpace = read_color_space(png_ptr, info_ptr);
|
|
|
| if (1 == numberPasses) {
|
| return new SkPngScanlineDecoder(imageInfo, streamDeleter.detach(), chunkReader,
|
|
|