avformat/4xm: Check for duplicate track ids

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit dd94912479)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2021-12-07 09:14:09 +01:00
parent f34273703b
commit fccff20bdd
1 changed files with 3 additions and 0 deletions

View File

@ -149,6 +149,9 @@ static int parse_strk(AVFormatContext *s,
memset(&fourxm->tracks[fourxm->track_count], 0, memset(&fourxm->tracks[fourxm->track_count], 0,
sizeof(AudioTrack) * (track + 1 - fourxm->track_count)); sizeof(AudioTrack) * (track + 1 - fourxm->track_count));
fourxm->track_count = track + 1; fourxm->track_count = track + 1;
} else {
if (fourxm->tracks[track].bits)
return AVERROR_INVALIDDATA;
} }
fourxm->tracks[track].adpcm = AV_RL32(buf + 12); fourxm->tracks[track].adpcm = AV_RL32(buf + 12);
fourxm->tracks[track].channels = AV_RL32(buf + 36); fourxm->tracks[track].channels = AV_RL32(buf + 36);