From 066a4819cc1b5a7990daa74a5d3825ad783e7acf Mon Sep 17 00:00:00 2001 From: John Stebbins Date: Wed, 18 Jun 2014 13:38:36 -0700 Subject: [PATCH] avcodec/pgssubdec: Bail out of decode_rle() if error and AV_EF_EXPLODE is set Signed-off-by: Michael Niedermayer --- libavcodec/pgssubdec.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libavcodec/pgssubdec.c b/libavcodec/pgssubdec.c index 4e30c065eb..f353c4c17c 100644 --- a/libavcodec/pgssubdec.c +++ b/libavcodec/pgssubdec.c @@ -150,9 +150,13 @@ static int decode_rle(AVCodecContext *avctx, AVSubtitleRect *rect, * New Line. Check if correct pixels decoded, if not display warning * and adjust bitmap pointer to correct new line position. */ - if (pixel_count % rect->w > 0) + if (pixel_count % rect->w > 0) { av_log(avctx, AV_LOG_ERROR, "Decoded %d pixels, when line should be %d pixels\n", pixel_count % rect->w, rect->w); + if (avctx->err_recognition & AV_EF_EXPLODE) { + return AVERROR_INVALIDDATA; + } + } line_count++; } } -- 2.11.0