summaryrefslogtreecommitdiff
path: root/libavcodec/wavarc.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2023-08-07 02:33:24 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2023-08-23 22:52:26 +0200
commit5f5a1ccd04acc74e31e1e4fe7e297b3f589425b3 (patch)
tree86001e138fbb226091cfbc0bc2ec1694f2129f50 /libavcodec/wavarc.c
parent1a81a40de265df6c5e4e6bb924c5f3c219904f41 (diff)
avcodec/wavarc: Check that nb_samples is not negative
It is currently probably not possible for it to be negative as the needed 2Mb input buf size is not achievable. But it is more robust to check for it too. If it would become negative than code like s->samples[0][n] = s->samples[0][s->nb_samples + n]; would crash Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/wavarc.c')
-rw-r--r--libavcodec/wavarc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/wavarc.c b/libavcodec/wavarc.c
index 0dc5849679..4bdd548d5f 100644
--- a/libavcodec/wavarc.c
+++ b/libavcodec/wavarc.c
@@ -311,7 +311,7 @@ static int decode_2slp(AVCodecContext *avctx,
return AVERROR_EOF;
case 8:
s->nb_samples = get_urice(gb, 8);
- if (s->nb_samples > 570) {
+ if (s->nb_samples > 570U) {
s->nb_samples = 570;
return AVERROR_INVALIDDATA;
}
@@ -587,7 +587,7 @@ static int decode_5elp(AVCodecContext *avctx,
return AVERROR_EOF;
case 11:
s->nb_samples = get_urice(gb, 8);
- if (s->nb_samples > 570) {
+ if (s->nb_samples > 570U) {
s->nb_samples = 570;
return AVERROR_INVALIDDATA;
}