aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-04-06 15:45:42 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-04-08 11:32:33 +0200
commitd393c45051ddaf6146e7e29ec2ea97035a727529 (patch)
treea8e0c803d6741db421d6665bea278e4b3f50612f
parent6e8e9b7633d8b755e7a464a10ba5047f31cbd84d (diff)
downloadffmpeg-d393c45051ddaf6146e7e29ec2ea97035a727529.tar.gz
avcodec/mpegvideo_enc: Don't segfault on unorthodox mpeg_quant
The (deprecated) field AVCodecContext.mpeg_quant has no range restriction; MpegEncContext.mpeg_quant is restricted to 0..1. If the former is set, the latter is overwritten with it without checking the range. This can trigger an av_assert2() with the MPEG-4 encoder when writing said field. Fix this by just setting MpegEncContext.mpeg_quant to 1 if AVCodecContext.mpeg_quant is set. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavcodec/mpegvideo_enc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index 79c4071bad..651b1b5325 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -627,7 +627,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
#if FF_API_PRIVATE_OPT
FF_DISABLE_DEPRECATION_WARNINGS
if (avctx->mpeg_quant)
- s->mpeg_quant = avctx->mpeg_quant;
+ s->mpeg_quant = 1;
FF_ENABLE_DEPRECATION_WARNINGS
#endif