summaryrefslogtreecommitdiff
path: root/libavcodec/alac.c
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2012-07-09 13:23:22 -0400
committerJustin Ruggles <justin.ruggles@gmail.com>2012-07-19 13:26:47 -0400
commit7a206eb32f624171a35235f714d44ee9dec9abcb (patch)
treea97ab30318603aa3e5b26c47524e8a85312e0f80 /libavcodec/alac.c
parent1193d3feddc1ce9ea233632679630b377d2a9894 (diff)
alac: fix check for valid max_samples_per_frame
Diffstat (limited to 'libavcodec/alac.c')
-rw-r--r--libavcodec/alac.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/alac.c b/libavcodec/alac.c
index db83796963..1fc4dc5cec 100644
--- a/libavcodec/alac.c
+++ b/libavcodec/alac.c
@@ -511,9 +511,9 @@ static int alac_set_info(ALACContext *alac)
bytestream2_skipu(&gb, 12); // size:4, alac:4, version:4
alac->max_samples_per_frame = bytestream2_get_be32u(&gb);
- if (alac->max_samples_per_frame >= UINT_MAX/4){
- av_log(alac->avctx, AV_LOG_ERROR,
- "max_samples_per_frame too large\n");
+ if (!alac->max_samples_per_frame || alac->max_samples_per_frame > INT_MAX) {
+ av_log(alac->avctx, AV_LOG_ERROR, "max samples per frame invalid: %u\n",
+ alac->max_samples_per_frame);
return AVERROR_INVALIDDATA;
}
bytestream2_skipu(&gb, 1); // compatible version