diff --git a/libavformat/smush.c b/libavformat/smush.c index b164c7516e90eee5a16f2831b416d862f8b82c1f..19ac5d94918b37c10711aeec2189f0900f847aaa 100644 --- a/libavformat/smush.c +++ b/libavformat/smush.c @@ -32,8 +32,10 @@ typedef struct { 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; }