diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c index 3b02d2b..216d4a2 100644 --- a/libavformat/id3v2.c +++ b/libavformat/id3v2.c @@ -488,7 +488,7 @@ static void read_apic(AVFormatContext *s, AVIOContext *pb, int taglen, char *tag apic->len = taglen; apic->data = av_malloc(taglen); - if (!apic->data || avio_read(pb, apic->data, taglen) != taglen) + if (!apic->data || !apic->len || avio_read(pb, apic->data, taglen) != taglen) goto fail; new_extra->tag = "APIC";