avcodec/dvdsubenc: return error if canvas_size is too small for subtitle render

Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
This commit is contained in:
Limin Wang 2022-05-08 22:52:14 +08:00
parent 8e828ee1ad
commit 94968dbc11

View File

@ -376,6 +376,12 @@ static int encode_dvd_subtitles(AVCodecContext *avctx,
x2 = vrect.x + vrect.w - 1;
y2 = vrect.y + vrect.h - 1;
if (x2 > avctx->width || y2 > avctx->height) {
av_log(avctx, AV_LOG_ERROR, "canvas_size(%d:%d) is too small(%d:%d) for render\n",
avctx->width, avctx->height, x2, y2);
ret = AVERROR(EINVAL);;
goto fail;
}
*q++ = 0x05;
// x1 x2 -> 6 nibbles
*q++ = vrect.x >> 4;