Commit c54268ce authored by Marton Balint's avatar Marton Balint Committed by James Zern

avcodec/libvpxdec: reject video and alpha dimension mismatches

Signed-off-by: 's avatarMarton Balint <cus@passwd.hu>
Signed-off-by: 's avatarJames Zern <jzern@google.com>
parent 5478e2cc
...@@ -283,6 +283,17 @@ static int vpx_decode(AVCodecContext *avctx, ...@@ -283,6 +283,17 @@ static int vpx_decode(AVCodecContext *avctx,
return ret; return ret;
} }
if (ctx->has_alpha_channel &&
(img->d_w != img_alpha->d_w ||
img->d_h != img_alpha->d_h ||
img->bit_depth != img_alpha->bit_depth)) {
av_log(avctx, AV_LOG_ERROR,
"Video dimensions %dx%d@%dbpp differ from alpha dimensions %dx%d@%dbpp\n",
img->d_w, img->d_h, img->bit_depth,
img_alpha->d_w, img_alpha->d_h, img_alpha->bit_depth);
return AVERROR_INVALIDDATA;
}
planes[0] = img->planes[VPX_PLANE_Y]; planes[0] = img->planes[VPX_PLANE_Y];
planes[1] = img->planes[VPX_PLANE_U]; planes[1] = img->planes[VPX_PLANE_U];
planes[2] = img->planes[VPX_PLANE_V]; planes[2] = img->planes[VPX_PLANE_V];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment