|
@@ -494,7 +494,8 @@ static int alac_set_info(ALACContext *alac) |
|
|
bytestream2_skipu(&gb, 12); // size:4, alac:4, version:4 |
|
|
bytestream2_skipu(&gb, 12); // size:4, alac:4, version:4 |
|
|
|
|
|
|
|
|
alac->max_samples_per_frame = bytestream2_get_be32u(&gb); |
|
|
alac->max_samples_per_frame = bytestream2_get_be32u(&gb); |
|
|
if (!alac->max_samples_per_frame || alac->max_samples_per_frame > INT_MAX) { |
|
|
|
|
|
|
|
|
if (!alac->max_samples_per_frame || |
|
|
|
|
|
alac->max_samples_per_frame > INT_MAX / sizeof(int32_t)) { |
|
|
av_log(alac->avctx, AV_LOG_ERROR, "max samples per frame invalid: %u\n", |
|
|
av_log(alac->avctx, AV_LOG_ERROR, "max samples per frame invalid: %u\n", |
|
|
alac->max_samples_per_frame); |
|
|
alac->max_samples_per_frame); |
|
|
return AVERROR_INVALIDDATA; |
|
|
return AVERROR_INVALIDDATA; |
|
|