summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/MPEG4Extractor.cpp
diff options
context:
space:
mode:
authorJon Larimer <jlarimer@google.com>2015-08-18 14:31:24 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-08-18 14:31:24 +0000
commit0afecdebaea1982ead120a701ddd24f2b0ff3897 (patch)
tree223e4d668bbe88175f34d28aadf55200002901a5 /media/libstagefright/MPEG4Extractor.cpp
parent8026ad3838e2f7367e8ff616f66b2c2f8bc8488c (diff)
parentaa1cc74139341eb3ae9511af5310b965dbf890f4 (diff)
downloadframeworks_av-0afecdebaea1982ead120a701ddd24f2b0ff3897.zip
frameworks_av-0afecdebaea1982ead120a701ddd24f2b0ff3897.tar.gz
frameworks_av-0afecdebaea1982ead120a701ddd24f2b0ff3897.tar.bz2
am aa1cc741: Merge "Check buffer size before using it" into klp-dev
* commit 'aa1cc74139341eb3ae9511af5310b965dbf890f4': Check buffer size before using it
Diffstat (limited to 'media/libstagefright/MPEG4Extractor.cpp')
-rw-r--r--media/libstagefright/MPEG4Extractor.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/MPEG4Extractor.cpp
index 8243cf5..6a24062 100644
--- a/media/libstagefright/MPEG4Extractor.cpp
+++ b/media/libstagefright/MPEG4Extractor.cpp
@@ -3399,6 +3399,10 @@ status_t MPEG4Source::read(
CHECK(mBuffer == NULL);
return err;
}
+ if (size > mBuffer->size()) {
+ ALOGE("buffer too small: %zu > %zu", size, mBuffer->size());
+ return ERROR_BUFFER_TOO_SMALL;
+ }
}
if (!mIsAVC || mWantsNALFragments) {
@@ -3645,6 +3649,10 @@ status_t MPEG4Source::fragmentedRead(
ALOGV("acquire_buffer returned %d", err);
return err;
}
+ if (size > mBuffer->size()) {
+ ALOGE("buffer too small: %zu > %zu", size, mBuffer->size());
+ return ERROR_BUFFER_TOO_SMALL;
+ }
}
const Sample *smpl = &mCurrentSamples[mCurrentSampleIndex];