Loading media/ndk/NdkMediaCodec.cpp +7 −1 Original line number Diff line number Diff line Loading @@ -811,7 +811,13 @@ AMediaCodecCryptoInfo *AMediaCodecCryptoInfo_new( size_t *encryptedbytes) { // size needed to store all the crypto data size_t cryptosize = sizeof(AMediaCodecCryptoInfo) + sizeof(size_t) * numsubsamples * 2; size_t cryptosize; // = sizeof(AMediaCodecCryptoInfo) + sizeof(size_t) * numsubsamples * 2; if (__builtin_mul_overflow(sizeof(size_t) * 2, numsubsamples, &cryptosize) || __builtin_add_overflow(cryptosize, sizeof(AMediaCodecCryptoInfo), &cryptosize)) { ALOGE("crypto size overflow"); return NULL; } AMediaCodecCryptoInfo *ret = (AMediaCodecCryptoInfo*) malloc(cryptosize); if (!ret) { ALOGE("couldn't allocate %zu bytes", cryptosize); Loading Loading
media/ndk/NdkMediaCodec.cpp +7 −1 Original line number Diff line number Diff line Loading @@ -811,7 +811,13 @@ AMediaCodecCryptoInfo *AMediaCodecCryptoInfo_new( size_t *encryptedbytes) { // size needed to store all the crypto data size_t cryptosize = sizeof(AMediaCodecCryptoInfo) + sizeof(size_t) * numsubsamples * 2; size_t cryptosize; // = sizeof(AMediaCodecCryptoInfo) + sizeof(size_t) * numsubsamples * 2; if (__builtin_mul_overflow(sizeof(size_t) * 2, numsubsamples, &cryptosize) || __builtin_add_overflow(cryptosize, sizeof(AMediaCodecCryptoInfo), &cryptosize)) { ALOGE("crypto size overflow"); return NULL; } AMediaCodecCryptoInfo *ret = (AMediaCodecCryptoInfo*) malloc(cryptosize); if (!ret) { ALOGE("couldn't allocate %zu bytes", cryptosize); Loading