Browse Source

avformat/mov: Use ff_alloc_extradata for dvdsub extradata

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Reviewed-by: "mypopy@gmail.com" <mypopy@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
tags/n4.3
Andreas Rheinhardt Michael Niedermayer 6 years ago
parent
commit
56ce2ad2cc
1 changed files with 4 additions and 7 deletions
  1. +4
    -7
      libavformat/mov.c

+ 4
- 7
libavformat/mov.c View File

@@ -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;


Loading…
Cancel
Save