diff options
author | Leon Scroggins III <scroggo@google.com> | 2015-01-27 22:17:11 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-01-27 22:17:11 +0000 |
commit | 9352296810926eae663477526545a55e1b1f7a27 (patch) | |
tree | 969ff4fd4ef5c808d26e130bb69e89933c6ba683 /core | |
parent | e8c1a97fa33797df528265b6f0b0c2c39ac2c589 (diff) | |
parent | 01287549ad415c51377683696eb37c362d43061a (diff) | |
download | frameworks_base-9352296810926eae663477526545a55e1b1f7a27.zip frameworks_base-9352296810926eae663477526545a55e1b1f7a27.tar.gz frameworks_base-9352296810926eae663477526545a55e1b1f7a27.tar.bz2 |
am 01287549: am 9a6143fa: Handle bad ninepatch data.
* commit '01287549ad415c51377683696eb37c362d43061a':
Handle bad ninepatch data.
Diffstat (limited to 'core')
-rw-r--r-- | core/jni/android/graphics/NinePatchPeeker.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/core/jni/android/graphics/NinePatchPeeker.cpp b/core/jni/android/graphics/NinePatchPeeker.cpp index df996af..da4a80c 100644 --- a/core/jni/android/graphics/NinePatchPeeker.cpp +++ b/core/jni/android/graphics/NinePatchPeeker.cpp @@ -24,7 +24,9 @@ bool NinePatchPeeker::peek(const char tag[], const void* data, size_t length) { if (strcmp("npTc", tag) == 0 && length >= sizeof(Res_png_9patch)) { Res_png_9patch* patch = (Res_png_9patch*) data; size_t patchSize = patch->serializedSize(); - assert(length == patchSize); + if (length != patchSize) { + return false; + } // You have to copy the data because it is owned by the png reader Res_png_9patch* patchNew = (Res_png_9patch*) malloc(patchSize); memcpy(patchNew, patch, patchSize); |