switch to unique_ptr version of Skia stream api

Test: make

Change-Id: I49703b85fa3e7a256a0b0df7a7f53bc18a68e22b
This commit is contained in:
Mike Reed
2017-09-19 17:01:30 -04:00
parent 5134ab5cbd
commit be896edb20
4 changed files with 8 additions and 5 deletions

View File

@@ -560,7 +560,7 @@ static jobject nativeDecodeStream(JNIEnv* env, jobject clazz, jobject is, jbyteA
if (stream.get()) {
std::unique_ptr<SkStreamRewindable> bufferedStream(
SkFrontBufferedStream::Create(stream.release(), SkCodec::MinBufferedBytesNeeded()));
SkFrontBufferedStream::Make(std::move(stream), SkCodec::MinBufferedBytesNeeded()));
SkASSERT(bufferedStream.get() != NULL);
bitmap = doDecode(env, std::move(bufferedStream), padding, options);
}
@@ -610,7 +610,7 @@ static jobject nativeDecodeFileDescriptor(JNIEnv* env, jobject clazz, jobject fi
// Use a buffered stream. Although an SkFILEStream can be rewound, this
// ensures that SkImageDecoder::Factory never rewinds beyond the
// current position of the file descriptor.
std::unique_ptr<SkStreamRewindable> stream(SkFrontBufferedStream::Create(fileStream.release(),
std::unique_ptr<SkStreamRewindable> stream(SkFrontBufferedStream::Make(std::move(fileStream),
SkCodec::MinBufferedBytesNeeded()));
return doDecode(env, std::move(stream), padding, bitmapFactoryOptions);

View File

@@ -104,7 +104,8 @@ static jobject movie_decodeStream(JNIEnv* env, jobject clazz, jobject istream) {
// will only read 6.
// FIXME: Get this number from SkImageDecoder
// bufferedStream takes ownership of strm
std::unique_ptr<SkStreamRewindable> bufferedStream(SkFrontBufferedStream::Create(strm, 6));
std::unique_ptr<SkStreamRewindable> bufferedStream(SkFrontBufferedStream::Make(
std::unique_ptr<SkStream>(strm), 6));
SkASSERT(bufferedStream.get() != NULL);
Movie* moov = Movie::DecodeStream(bufferedStream.get());

View File

@@ -42,7 +42,7 @@ bool AssetStreamAdaptor::isAtEnd() const {
return fAsset->getRemainingLength() == 0;
}
SkStreamRewindable* AssetStreamAdaptor::duplicate() const {
SkStreamRewindable* AssetStreamAdaptor::onDuplicate() const {
// Cannot create a duplicate, since each AssetStreamAdaptor
// would be modifying the Asset.
//return new AssetStreamAdaptor(fAsset);

View File

@@ -36,7 +36,9 @@ public:
virtual size_t getLength() const;
virtual bool isAtEnd() const;
virtual SkStreamRewindable* duplicate() const;
protected:
SkStreamRewindable* onDuplicate() const override;
private:
Asset* fAsset;
};