diff --git a/media/libstagefright/SampleIterator.cpp b/media/libstagefright/SampleIterator.cpp index 4f31c5fa05..75f744dc89 100644 --- a/media/libstagefright/SampleIterator.cpp +++ b/media/libstagefright/SampleIterator.cpp @@ -172,7 +172,7 @@ status_t SampleIterator::findChunkRange(uint32_t sampleIndex) { if (mSampleToChunkIndex + 1 < mTable->mNumSampleToChunkOffsets) { mStopChunk = entry[1].startChunk; - if (mStopChunk < mFirstChunk || + if (mSamplesPerChunk == 0 || mStopChunk < mFirstChunk || (mStopChunk - mFirstChunk) > UINT32_MAX / mSamplesPerChunk || ((mStopChunk - mFirstChunk) * mSamplesPerChunk > UINT32_MAX - mFirstChunkSampleIndex)) {