diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-05-08 02:08:05 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-05-10 23:11:35 +0200 |
commit | 9afb291267db04568da0fac2ce391380c48d7047 (patch) | |
tree | b2d0ea963d597656f5b32b6c522b673fd3368847 /libavcodec/vp3.c | |
parent | af7468a28222195245e2a856a1b2407ed8f10252 (diff) | |
download | ffmpeg-9afb291267db04568da0fac2ce391380c48d7047.tar.gz |
avcodec/vp3: Don't try to decode VP4 when VP4 decoder is disabled
Otherwise decoding will crash lateron; e.g. because dct_tokens
is never set or because a VLC that has not been allocated is used.
Reviewed-by: Peter Ross <pross@xvid.org>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/vp3.c')
-rw-r--r-- | libavcodec/vp3.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c index 0cae075452..9aa84e83b7 100644 --- a/libavcodec/vp3.c +++ b/libavcodec/vp3.c @@ -2335,9 +2335,13 @@ static av_cold int vp3_decode_init(AVCodecContext *avctx) if (ret < 0) return ret; - if (avctx->codec_tag == MKTAG('V', 'P', '4', '0')) + if (avctx->codec_tag == MKTAG('V', 'P', '4', '0')) { s->version = 3; - else if (avctx->codec_tag == MKTAG('V', 'P', '3', '0')) +#if !CONFIG_VP4_DECODER + av_log(avctx, AV_LOG_ERROR, "This build does not support decoding VP4.\n"); + return AVERROR_DECODER_NOT_FOUND; +#endif + } else if (avctx->codec_tag == MKTAG('V', 'P', '3', '0')) s->version = 0; else s->version = 1; |