summaryrefslogtreecommitdiff
path: root/libavcodec/aacenc.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2021-05-28 21:37:26 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2021-05-29 20:14:24 +0200
commita7a7f32c8ad0179a1a85d0a8cff35924e6d90be8 (patch)
tree685a587788a9f497968efe46268f9a2b859c768e /libavcodec/aacenc.c
parent3300625c6f148455b08d641597d54b5be4c0f76a (diff)
downloadffmpeg-a7a7f32c8ad0179a1a85d0a8cff35924e6d90be8.tar.gz
avcodec/aacenc: Avoid 0 lambda
Fixes: Ticket8003 Fixes: CVE-2020-20453 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/aacenc.c')
-rw-r--r--libavcodec/aacenc.c3
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) {