From 3564c4562f46bede6ef1ea716c4fd4f77e470ae8 Mon Sep 17 00:00:00 2001 From: Wei Jia Date: Tue, 18 Aug 2015 11:17:24 -0700 Subject: libstagefright: fix handling of mSampleTimeEntries and mNumSampleSizes in SampleTable. Bug: 23247055 Change-Id: I29ef59c7ff09248063714e5013f7c33f66c5eebd --- media/libstagefright/include/SampleTable.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'media/libstagefright/include') diff --git a/media/libstagefright/include/SampleTable.h b/media/libstagefright/include/SampleTable.h index d06df7b..460492b 100644 --- a/media/libstagefright/include/SampleTable.h +++ b/media/libstagefright/include/SampleTable.h @@ -142,8 +142,9 @@ private: // normally we don't round inline uint64_t getSampleTime( size_t sample_index, uint64_t scale_num, uint64_t scale_den) const { - return (mSampleTimeEntries[sample_index].mCompositionTime - * scale_num) / scale_den; + return (sample_index < (size_t)mNumSampleSizes && mSampleTimeEntries != NULL + && scale_den != 0) + ? (mSampleTimeEntries[sample_index].mCompositionTime * scale_num) / scale_den : 0; } status_t getSampleSize_l(uint32_t sample_index, size_t *sample_size); -- cgit v1.1