Lynne: > Someone forgot to add `i` to the loop. > Also, the format has a 16-char title that we don't currently > check. > > Bytestream info from: > https://github.com/dcherednik/atracdenc/blob/master/src/aea.cpp > > Patch attached > > @@ -61,12 +61,19 @@ static int aea_read_probe(const AVProbeData *p) > > static int aea_read_header(AVFormatContext *s) > { > + char title[17] = { 0 }; > AVStream *st = avformat_new_stream(s, NULL); > if (!st) > return AVERROR(ENOMEM); > > + avio_skip(s->pb, 4); > + > + avio_read(s->pb, title, 16); > + if (strlen(title) && strlen(title) < 16) > + av_dict_set(&s->metadata, "title", title, 0); > +
You are not checking that you actually read 16 bytes. Maybe use ffio_read_len for that. If you do, you can modify the check to if (title[0] && !title[15]) and you also don't need the extra byte in title and can also avoid initializing it. > > @@ -90,11 +97,8 @@ static int aea_read_header(AVFormatContext *s) > static int aea_read_packet(AVFormatContext *s, AVPacket *pkt) > { > int ret = av_get_packet(s->pb, pkt, > s->streams[0]->codecpar->block_align); > - > - pkt->stream_index = 0; > - if (ret <= 0) > - return AVERROR(EIO); > - > + if (ret >= 0) > + pkt->stream_index = 0; The check is unnecessary. > return ret; > } > > -- _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".