Loading media/libheif/HeifDecoderImpl.cpp +10 −2 Original line number Diff line number Diff line Loading @@ -518,7 +518,6 @@ bool HeifDecoderImpl::decodeAsync() { { Mutex::Autolock _l(mRetrieverLock); weakRetriever = mRetriever; mRetriever.clear(); } for (size_t i = 1; i < mNumSlices; i++) { Loading Loading @@ -551,6 +550,12 @@ bool HeifDecoderImpl::decodeAsync() { } } // Hold on to mDataSource in case the client wants to redecode. { Mutex::Autolock _l(mRetrieverLock); mRetriever.clear(); } return false; } Loading Loading @@ -660,7 +665,10 @@ bool HeifDecoderImpl::decode(HeifFrameInfo* frameInfo) { mFrameDecoded = true; // Aggressively clear to avoid holding on to resources { Mutex::Autolock _l(mRetrieverLock); mRetriever.clear(); } // Hold on to mDataSource in case the client wants to redecode. return true; Loading Loading
media/libheif/HeifDecoderImpl.cpp +10 −2 Original line number Diff line number Diff line Loading @@ -518,7 +518,6 @@ bool HeifDecoderImpl::decodeAsync() { { Mutex::Autolock _l(mRetrieverLock); weakRetriever = mRetriever; mRetriever.clear(); } for (size_t i = 1; i < mNumSlices; i++) { Loading Loading @@ -551,6 +550,12 @@ bool HeifDecoderImpl::decodeAsync() { } } // Hold on to mDataSource in case the client wants to redecode. { Mutex::Autolock _l(mRetrieverLock); mRetriever.clear(); } return false; } Loading Loading @@ -660,7 +665,10 @@ bool HeifDecoderImpl::decode(HeifFrameInfo* frameInfo) { mFrameDecoded = true; // Aggressively clear to avoid holding on to resources { Mutex::Autolock _l(mRetrieverLock); mRetriever.clear(); } // Hold on to mDataSource in case the client wants to redecode. return true; Loading