summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorJon Larimer <jlarimer@google.com>2015-08-20 01:16:27 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-08-20 01:16:27 +0000
commitc8d5d07804790b250d5adcfb976bd8023b67cd9f (patch)
tree000277d4e74e8ec3215429a1f53f6aa8aa64c69a /media
parent9eea72aba176ed98dd423986380b5fb7ef4b70d6 (diff)
parent9e01d68bbfc54893865f8186cff5596ee3427f63 (diff)
downloadframeworks_av-c8d5d07804790b250d5adcfb976bd8023b67cd9f.zip
frameworks_av-c8d5d07804790b250d5adcfb976bd8023b67cd9f.tar.gz
frameworks_av-c8d5d07804790b250d5adcfb976bd8023b67cd9f.tar.bz2
am 9e01d68b: am 64459f96: am 3e9ed500: am 8a1a5d17: am 9707195b: am f97b6bee: Merge "Check integer overflow to prevent memory corruption" into klp-dev
* commit '9e01d68bbfc54893865f8186cff5596ee3427f63': Check integer overflow to prevent memory corruption
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;