summaryrefslogtreecommitdiff
path: root/libavcodec/utils.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-04-11 19:50:52 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-04-13 21:46:42 +0200
commit544324827e0131e43af1a54fb790a48a25fd7ba4 (patch)
tree456650cc22749df8d91e3e0421e949b400e16216 /libavcodec/utils.c
parentf6304af2341d0cee51c2116766622e3ac567b7a0 (diff)
avcodec/utils: Enforce minimum width also for VP5/6
Fixes: out of array access Fixes: poc_0411 Found-by: GwanYeong Kim <gy741.kim@gmail.com> Tested-by: GwanYeong Kim <gy741.kim@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/utils.c')
-rw-r--r--libavcodec/utils.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 8c7d056da6..59d41ccbb6 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -312,7 +312,10 @@ void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
*width = FFALIGN(*width, w_align);
*height = FFALIGN(*height, h_align);
- if (s->codec_id == AV_CODEC_ID_H264 || s->lowres) {
+ if (s->codec_id == AV_CODEC_ID_H264 || s->lowres ||
+ s->codec_id == AV_CODEC_ID_VP5 || s->codec_id == AV_CODEC_ID_VP6 ||
+ s->codec_id == AV_CODEC_ID_VP6F || s->codec_id == AV_CODEC_ID_VP6A
+ ) {
// some of the optimized chroma MC reads one line too much
// which is also done in mpeg decoders with lowres > 0
*height += 2;