From 0ddf80d470449a3aea04111cd7d1b4a2b9b2f8df Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 5 Jan 2023 13:49:52 +0100 Subject: [PATCH] midifile: error won invalid track size When the track data would exceed the file size, return an error. --- src/tools/midifile.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/tools/midifile.c b/src/tools/midifile.c index fbd19ce4a..5276ade73 100644 --- a/src/tools/midifile.c +++ b/src/tools/midifile.c @@ -118,6 +118,9 @@ static int read_mtrk(struct midi_file *mf, struct midi_track *track) track->size = parse_be32(mf->p + 4); mf->p = track->data + track->size; + if (mf->p > mf->data + mf->size) + return -EINVAL; + return 0; } -- GitLab