| Index: src/images/SkDecodingImageGenerator.cpp
|
| diff --git a/src/images/SkDecodingImageGenerator.cpp b/src/images/SkDecodingImageGenerator.cpp
|
| index baa112c303d4cfa6b6303a9b8ea08259dc1b7038..e7a775e264b8e9181f5ddaad6e4f57299f10afbe 100644
|
| --- a/src/images/SkDecodingImageGenerator.cpp
|
| +++ b/src/images/SkDecodingImageGenerator.cpp
|
| @@ -24,11 +24,11 @@ class DecodingImageGenerator : public SkImageGenerator {
|
| public:
|
| virtual ~DecodingImageGenerator();
|
|
|
| - SkData* fData;
|
| - SkStreamRewindable* fStream;
|
| - const SkImageInfo fInfo;
|
| - const int fSampleSize;
|
| - const bool fDitherImage;
|
| + SkData* fData;
|
| + SkAutoTDelete<SkStreamRewindable> fStream;
|
| + const SkImageInfo fInfo;
|
| + const int fSampleSize;
|
| + const bool fDitherImage;
|
|
|
| DecodingImageGenerator(SkData* data,
|
| SkStreamRewindable* stream,
|
| @@ -128,7 +128,6 @@ DecodingImageGenerator::DecodingImageGenerator(
|
|
|
| DecodingImageGenerator::~DecodingImageGenerator() {
|
| SkSafeUnref(fData);
|
| - fStream->unref();
|
| }
|
|
|
| SkData* DecodingImageGenerator::onRefEncodedData() {
|
| @@ -227,7 +226,7 @@ SkImageGenerator* CreateDecodingImageGenerator(
|
| SkStreamRewindable* stream,
|
| const SkDecodingImageGenerator::Options& opts) {
|
| SkASSERT(stream);
|
| - SkAutoTUnref<SkStreamRewindable> autoStream(stream); // always unref this.
|
| + SkAutoTDelete<SkStreamRewindable> autoStream(stream); // always delete this
|
| SkAssertResult(autoStream->rewind());
|
| SkAutoTDelete<SkImageDecoder> decoder(SkImageDecoder::Factory(autoStream));
|
| if (NULL == decoder.get()) {
|
| @@ -280,7 +279,6 @@ SkImageGenerator* SkDecodingImageGenerator::Create(
|
| }
|
| SkStreamRewindable* stream = SkNEW_ARGS(SkMemoryStream, (data));
|
| SkASSERT(stream != NULL);
|
| - SkASSERT(stream->unique());
|
| return CreateDecodingImageGenerator(data, stream, opts);
|
| }
|
|
|
| @@ -288,9 +286,7 @@ SkImageGenerator* SkDecodingImageGenerator::Create(
|
| SkStreamRewindable* stream,
|
| const SkDecodingImageGenerator::Options& opts) {
|
| SkASSERT(stream != NULL);
|
| - SkASSERT(stream->unique());
|
| - if ((stream == NULL) || !stream->unique()) {
|
| - SkSafeUnref(stream);
|
| + if (stream == NULL) {
|
| return NULL;
|
| }
|
| return CreateDecodingImageGenerator(NULL, stream, opts);
|
|
|