diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c index 6f82d9339a..c3620716eb 100644 --- a/libavformat/aiffdec.c +++ b/libavformat/aiffdec.c @@ -278,9 +278,8 @@ static int aiff_read_header(AVFormatContext *s) case MKTAG('w', 'a', 'v', 'e'): if ((uint64_t)size > (1<<30)) return -1; - if (ff_alloc_extradata(st->codec, size)) + if (ff_get_extradata(st->codec, pb, size) < 0) return AVERROR(ENOMEM); - avio_read(pb, st->codec->extradata, size); if (st->codec->codec_id == AV_CODEC_ID_QDM2 && size>=12*4 && !st->codec->block_align) { st->codec->block_align = AV_RB32(st->codec->extradata+11*4); aiff->block_duration = AV_RB32(st->codec->extradata+9*4);