summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/MetaData.cpp
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2015-07-29 16:15:55 -0700
committerJon Larimer <jlarimer@google.com>2015-07-30 22:22:46 +0000
commit566c70caff87c710e659c5aaad0692e031d93ded (patch)
treec8bf07c4533af1fafc7f87857912557449a177a1 /media/libstagefright/MetaData.cpp
parent29b83cbb9018e53a18cf6e0fb34893f9774dcb96 (diff)
downloadframeworks_av-566c70caff87c710e659c5aaad0692e031d93ded.zip
frameworks_av-566c70caff87c710e659c5aaad0692e031d93ded.tar.gz
frameworks_av-566c70caff87c710e659c5aaad0692e031d93ded.tar.bz2
Guard against codecinfo overflow
Bug: 21296336 Change-Id: I78be5141b3108142f12d7cb94839fa50f776d84a
Diffstat (limited to 'media/libstagefright/MetaData.cpp')
-rw-r--r--media/libstagefright/MetaData.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/media/libstagefright/MetaData.cpp b/media/libstagefright/MetaData.cpp
index 7b60afc..f870b98 100644
--- a/media/libstagefright/MetaData.cpp
+++ b/media/libstagefright/MetaData.cpp
@@ -261,7 +261,12 @@ void MetaData::typed_data::setData(
mType = type;
allocateStorage(size);
- memcpy(storage(), data, size);
+ void *dst = storage();
+ if (!dst) {
+ ALOGE("Couldn't allocate %zu bytes for item", size);
+ return;
+ }
+ memcpy(dst, data, size);
}
void MetaData::typed_data::getData(