summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorJon Larimer <jlarimer@google.com>2015-08-18 15:04:20 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-08-18 15:04:20 +0000
commitf97b6beeb2e2f0977d1c7fa8d2aaafe4e2f4d68a (patch)
treecc19b2094c6e098fab0ad87d96662963024038f5 /media
parent2ed42aea9c6fbca4bde52d647ff082b997b5968c (diff)
parentb158a9a5bcfe21480f57bc58d45517f1a81cca39 (diff)
downloadframeworks_av-f97b6beeb2e2f0977d1c7fa8d2aaafe4e2f4d68a.zip
frameworks_av-f97b6beeb2e2f0977d1c7fa8d2aaafe4e2f4d68a.tar.gz
frameworks_av-f97b6beeb2e2f0977d1c7fa8d2aaafe4e2f4d68a.tar.bz2
Merge "Check integer overflow to prevent memory corruption" into klp-dev
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/DRMExtractor.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/media/libstagefright/DRMExtractor.cpp b/media/libstagefright/DRMExtractor.cpp
index 63cb430..9cb6e86 100644
--- a/media/libstagefright/DRMExtractor.cpp
+++ b/media/libstagefright/DRMExtractor.cpp
@@ -186,7 +186,8 @@ status_t DRMSource::read(MediaBuffer **buffer, const ReadOptions *options) {
srcOffset += mNALLengthSize;
- if (srcOffset + nalLength > len) {
+ size_t end = srcOffset + nalLength;
+ if (end > len || end < srcOffset) {
if (decryptedDrmBuffer.data) {
delete [] decryptedDrmBuffer.data;
decryptedDrmBuffer.data = NULL;