Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e3ae7b4a authored by Marco Nelissen's avatar Marco Nelissen Committed by Android (Google) Code Review
Browse files

Merge "Fail gracefully on allocation failure"

parents dafa42d4 8672fb35
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -3536,8 +3536,21 @@ void OMXCodec::setJPEGInputFormat(
}

void OMXCodec::addCodecSpecificData(const void *data, size_t size) {

    if (size > SIZE_MAX - (sizeof(CodecSpecificData) - 1)) {
        // this would require the size to be ~4GB, which should be near impossible
        // given that it is the size of an in-memory chunk of data
        ALOGE("b/23540411");
        return;
    }

    CodecSpecificData *specific =
        (CodecSpecificData *)malloc(sizeof(CodecSpecificData) + size - 1);
        (CodecSpecificData *)malloc(sizeof(CodecSpecificData) - 1 + size);

    if (specific == NULL) {
        ALOGE("b/23540411");
        return;
    }

    specific->mSize = size;
    memcpy(specific->mData, data, size);