static int smush_read_probe(AVProbeData *p)
{
- if ((AV_RL32(p->buf) == MKTAG('S', 'A', 'N', 'M') ||
- AV_RL32(p->buf) == MKTAG('A', 'N', 'I', 'M'))) {
+ if (((AV_RL32(p->buf) == MKTAG('S', 'A', 'N', 'M') &&
+ AV_RL32(p->buf + 8) == MKTAG('S', 'H', 'D', 'R')) ||
+ (AV_RL32(p->buf) == MKTAG('A', 'N', 'I', 'M') &&
+ AV_RL32(p->buf + 8) == MKTAG('A', 'H', 'D', 'R')))) {
return AVPROBE_SCORE_MAX;
}
case MKBETAG('W', 'a', 'v', 'e'):
if (size < 13)
return AVERROR_INVALIDDATA;
- if (av_get_packet(pb, pkt, size) < 0)
+ if (av_get_packet(pb, pkt, size) < 13)
return AVERROR(EIO);
pkt->stream_index = smush->audio_stream_index;