Commit 86e9747c authored by Andreas Rheinhardt's avatar Andreas Rheinhardt Committed by Michael Niedermayer

avformat/iff: Use ff_alloc_extradata

Besides improved readability it also zeroes the padding which has been
forgotten here.
Signed-off-by: 's avatarAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent a6d292b9
...@@ -525,10 +525,10 @@ static int iff_read_header(AVFormatContext *s) ...@@ -525,10 +525,10 @@ static int iff_read_header(AVFormatContext *s)
data_size); data_size);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
st->codecpar->extradata_size = data_size + IFF_EXTRA_VIDEO_SIZE; res = ff_alloc_extradata(st->codecpar,
st->codecpar->extradata = av_malloc(data_size + IFF_EXTRA_VIDEO_SIZE + AV_INPUT_BUFFER_PADDING_SIZE); data_size + IFF_EXTRA_VIDEO_SIZE);
if (!st->codecpar->extradata) if (res < 0)
return AVERROR(ENOMEM); return res;
if (avio_read(pb, st->codecpar->extradata + IFF_EXTRA_VIDEO_SIZE, data_size) < 0) { if (avio_read(pb, st->codecpar->extradata + IFF_EXTRA_VIDEO_SIZE, data_size) < 0) {
av_freep(&st->codecpar->extradata); av_freep(&st->codecpar->extradata);
st->codecpar->extradata_size = 0; st->codecpar->extradata_size = 0;
...@@ -771,10 +771,9 @@ static int iff_read_header(AVFormatContext *s) ...@@ -771,10 +771,9 @@ static int iff_read_header(AVFormatContext *s)
iff->transparency = transparency; iff->transparency = transparency;
if (!st->codecpar->extradata) { if (!st->codecpar->extradata) {
st->codecpar->extradata_size = IFF_EXTRA_VIDEO_SIZE; int ret = ff_alloc_extradata(st->codecpar, IFF_EXTRA_VIDEO_SIZE);
st->codecpar->extradata = av_malloc(IFF_EXTRA_VIDEO_SIZE + AV_INPUT_BUFFER_PADDING_SIZE); if (ret < 0)
if (!st->codecpar->extradata) return ret;
return AVERROR(ENOMEM);
} }
av_assert0(st->codecpar->extradata_size >= IFF_EXTRA_VIDEO_SIZE); av_assert0(st->codecpar->extradata_size >= IFF_EXTRA_VIDEO_SIZE);
buf = st->codecpar->extradata; buf = st->codecpar->extradata;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment