avcodec/srtdec: Check ff_htmlmarkup_to_ass() return code

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2017-05-06 01:50:58 +02:00
parent 983e3fbcc5
commit 7b94df232a

View File

@ -27,7 +27,7 @@
#include "ass.h"
#include "htmlsubtitles.h"
static void srt_to_ass(AVCodecContext *avctx, AVBPrint *dst,
static int srt_to_ass(AVCodecContext *avctx, AVBPrint *dst,
const char *in, int x1, int y1, int x2, int y2)
{
if (x1 >= 0 && y1 >= 0) {
@ -49,7 +49,7 @@ static void srt_to_ass(AVCodecContext *avctx, AVBPrint *dst,
}
}
ff_htmlmarkup_to_ass(avctx, dst, in);
return ff_htmlmarkup_to_ass(avctx, dst, in);
}
static int srt_decode_frame(AVCodecContext *avctx,
@ -74,8 +74,9 @@ static int srt_decode_frame(AVCodecContext *avctx,
av_bprint_init(&buffer, 0, AV_BPRINT_SIZE_UNLIMITED);
srt_to_ass(avctx, &buffer, avpkt->data, x1, y1, x2, y2);
ret = ff_ass_add_rect(sub, buffer.str, s->readorder++, 0, NULL, NULL);
ret = srt_to_ass(avctx, &buffer, avpkt->data, x1, y1, x2, y2);
if (ret >= 0)
ret = ff_ass_add_rect(sub, buffer.str, s->readorder++, 0, NULL, NULL);
av_bprint_finalize(&buffer, NULL);
if (ret < 0)
return ret;