From c40ccd5aaeb6e1c6ffd7f7685567444a26ded76f Mon Sep 17 00:00:00 2001 From: Damien Zammit Date: Sat, 18 Feb 2017 13:16:31 +1100 Subject: [PATCH] ptformat: Update lib to upstream 624671c Temporary measure to prevent bogus data being parsed: Until .ptx decryption is fully solved, we protect the MIDI data output against bogus values being parsed. --- libs/ptformat/ptfformat.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libs/ptformat/ptfformat.cc b/libs/ptformat/ptfformat.cc index a3b18b35d5..ec67fd37b3 100644 --- a/libs/ptformat/ptfformat.cc +++ b/libs/ptformat/ptfformat.cc @@ -766,6 +766,14 @@ PTFFormat::parsemidi(void) { m.length = midi_len; m.note = midi_note; m.velocity = midi_velocity; +#if 1 +// stop gap measure to prevent crashes in ardour, +// remove when decryption is fully solved for .ptx + if ((m.velocity & 0x80) || (m.note & 0x80) || + (m.pos & 0xff00000000) || (m.length & 0xff00000000)) { + continue; + } +#endif midi.push_back(m); //fprintf(stderr, "MIDI: Note=%d Vel=%d Start=%d(samples) Len=%d(samples)\n", midi_note, midi_velocity, midi_pos, midi_len); -- 2.30.2