diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c index ff47d8dc7b..8ae577cb71 100644 --- a/libavformat/aiffdec.c +++ b/libavformat/aiffdec.c @@ -23,6 +23,7 @@ #include "libavutil/dict.h" #include "libavutil/mem.h" #include "avformat.h" +#include "avio_internal.h" #include "demux.h" #include "internal.h" #include "pcm.h" @@ -368,9 +369,10 @@ static int aiff_read_header(AVFormatContext *s) if (len == 11 && size > 11) { uint8_t chunk[11]; - ret = avio_read(pb, chunk, 11); - if (ret > 0) - size -= ret; + ret = ffio_read_size(pb, chunk, 11); + if (ret < 0) + return ret; + size -= ret; if (!memcmp(chunk, "VADPCMCODES", sizeof(chunk))) { if ((ret = ff_get_extradata(s, st->codecpar, pb, size)) < 0) return ret;