diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2021-05-28 21:37:26 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2021-05-29 20:14:24 +0200 |
commit | a7a7f32c8ad0179a1a85d0a8cff35924e6d90be8 (patch) | |
tree | 685a587788a9f497968efe46268f9a2b859c768e | |
parent | 3300625c6f148455b08d641597d54b5be4c0f76a (diff) | |
download | ffmpeg-a7a7f32c8ad0179a1a85d0a8cff35924e6d90be8.tar.gz |
avcodec/aacenc: Avoid 0 lambda
Fixes: Ticket8003
Fixes: CVE-2020-20453
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/aacenc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c index aa223cf25f..e80591ba86 100644 --- a/libavcodec/aacenc.c +++ b/libavcodec/aacenc.c @@ -28,6 +28,7 @@ * TODOs: * add sane pulse detection ***********************************/ +#include <float.h> #include "libavutil/libm.h" #include "libavutil/float_dsp.h" @@ -852,7 +853,7 @@ static int aac_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, /* Not so fast though */ ratio = sqrtf(ratio); } - s->lambda = FFMIN(s->lambda * ratio, 65536.f); + s->lambda = av_clipf(s->lambda * ratio, FLT_MIN, 65536.f); /* Keep iterating if we must reduce and lambda is in the sky */ if (ratio > 0.9f && ratio < 1.1f) { |