diff options
author | Marco Nelissen <marcone@google.com> | 2015-05-05 11:00:11 -0700 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2015-05-05 11:26:42 -0700 |
commit | fe7186bb1567b5725eb8ce61e3267a1733e90c53 (patch) | |
tree | 703678825c2be20acf76c3c13e9824aec7a0cdae /media | |
parent | a627e3df129c4a502368ee861b1e5831ecae174a (diff) | |
download | frameworks_av-fe7186bb1567b5725eb8ce61e3267a1733e90c53.zip frameworks_av-fe7186bb1567b5725eb8ce61e3267a1733e90c53.tar.gz frameworks_av-fe7186bb1567b5725eb8ce61e3267a1733e90c53.tar.bz2 |
OggExtractor::verifyHeader: return errors instead of asserting
Bug: 16631522
Change-Id: I619455af64cad04a0f4fd35e52e3f3709efad8b4
Diffstat (limited to 'media')
-rw-r--r-- | media/libstagefright/OggExtractor.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/media/libstagefright/OggExtractor.cpp b/media/libstagefright/OggExtractor.cpp index d577034..4297549 100644 --- a/media/libstagefright/OggExtractor.cpp +++ b/media/libstagefright/OggExtractor.cpp @@ -753,7 +753,9 @@ status_t MyVorbisExtractor::verifyHeader( oggpack_buffer bits; oggpack_readinit(&bits, &ref); - CHECK_EQ(oggpack_read(&bits, 8), type); + if (oggpack_read(&bits, 8) != type) { + return ERROR_MALFORMED; + } for (size_t i = 0; i < 6; ++i) { oggpack_read(&bits, 8); // skip 'vorbis' } @@ -761,7 +763,9 @@ status_t MyVorbisExtractor::verifyHeader( switch (type) { case 1: { - CHECK_EQ(0, _vorbis_unpack_info(&mVi, &bits)); + if (0 != _vorbis_unpack_info(&mVi, &bits)) { + return ERROR_MALFORMED; + } mMeta->setData(kKeyVorbisInfo, 0, data, size); mMeta->setInt32(kKeySampleRate, mVi.rate); |