diff options
author | Dongwon Kang <dwkang@google.com> | 2019-06-24 14:14:38 -0700 |
---|---|---|
committer | Bryan Ferris <bferris@google.com> | 2020-02-24 12:25:20 -0800 |
commit | 3f252fe9799ce4022db7768f63aa2d3acf7f82d6 (patch) | |
tree | b3c04ff8b87023e9f27a841245b54b6d97c63d08 | |
parent | 6081cd380a88f04a0f2667c0f557c936645564bd (diff) | |
download | frameworks_av-3f252fe9799ce4022db7768f63aa2d3acf7f82d6.tar.gz frameworks_av-3f252fe9799ce4022db7768f63aa2d3acf7f82d6.tar.bz2 frameworks_av-3f252fe9799ce4022db7768f63aa2d3acf7f82d6.zip |
MPEG4Extractor: check the default sample info before checking the validity of sample size.
Test: atest MediaPlayerDrmTest
Bug: 135215092, Bug: 124525515
Change-Id: I6383514acaf546734b320224342a61cbd362c4bf
-rwxr-xr-x | media/extractors/mp4/MPEG4Extractor.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/media/extractors/mp4/MPEG4Extractor.cpp b/media/extractors/mp4/MPEG4Extractor.cpp index 5d693a147f..cb845c49a3 100755 --- a/media/extractors/mp4/MPEG4Extractor.cpp +++ b/media/extractors/mp4/MPEG4Extractor.cpp @@ -5053,15 +5053,15 @@ status_t MPEG4Source::parseSampleAuxiliaryInformationSizes( mCurrentSampleInfoCount = smplcnt; offset += 4; size -= 4; + if (mCurrentDefaultSampleInfoSize != 0) { + ALOGV("@@@@ using default sample info size of %d", mCurrentDefaultSampleInfoSize); + return OK; + } if(smplcnt > size) { ALOGW("b/124525515 - smplcnt(%u) > size(%ld)", (unsigned int)smplcnt, (unsigned long)size); android_errorWriteLog(0x534e4554, "124525515"); return -EINVAL; } - if (mCurrentDefaultSampleInfoSize != 0) { - ALOGV("@@@@ using default sample info size of %d", mCurrentDefaultSampleInfoSize); - return OK; - } if (smplcnt > mCurrentSampleInfoAllocSize) { uint8_t * newPtr = (uint8_t*) realloc(mCurrentSampleInfoSizes, smplcnt); if (newPtr == NULL) { |