From 56ce2ad2cccf33067b9f428a637f5c11edcc10ea Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Tue, 10 Dec 2019 22:59:45 +0100 Subject: [PATCH] avformat/mov: Use ff_alloc_extradata for dvdsub extradata Signed-off-by: Andreas Rheinhardt Reviewed-by: "mypopy@gmail.com" Signed-off-by: Michael Niedermayer --- libavformat/mov.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 7553a7fdfc..733f4e4a34 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2255,7 +2255,7 @@ static int mov_rewrite_dvd_sub_extradata(AVStream *st) { char buf[256] = {0}; uint8_t *src = st->codecpar->extradata; - int i; + int i, ret; if (st->codecpar->extradata_size != 64) return 0; @@ -2275,12 +2275,9 @@ static int mov_rewrite_dvd_sub_extradata(AVStream *st) if (av_strlcat(buf, "\n", sizeof(buf)) >= sizeof(buf)) return 0; - av_freep(&st->codecpar->extradata); - st->codecpar->extradata_size = 0; - st->codecpar->extradata = av_mallocz(strlen(buf) + AV_INPUT_BUFFER_PADDING_SIZE); - if (!st->codecpar->extradata) - return AVERROR(ENOMEM); - st->codecpar->extradata_size = strlen(buf); + ret = ff_alloc_extradata(st->codecpar, strlen(buf)); + if (ret < 0) + return ret; memcpy(st->codecpar->extradata, buf, st->codecpar->extradata_size); return 0;