From fb87a14b3e153d0cba6af0b3262bcc3c9fe83ce7 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 18 Aug 2018 14:29:57 +0200 Subject: Do not assert/crash when bad clients send unordered events --- common/JackMidiPort.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'common/JackMidiPort.cpp') diff --git a/common/JackMidiPort.cpp b/common/JackMidiPort.cpp index babee324..8731f1e1 100644 --- a/common/JackMidiPort.cpp +++ b/common/JackMidiPort.cpp @@ -1,5 +1,6 @@ /* Copyright (C) 2007 Dmitry Baikov +Copyright (C) 2018 Filipe Coelho Original JACK MIDI implementation Copyright (C) 2004 Ian Esten This program is free software; you can redistribute it and/or modify @@ -130,7 +131,10 @@ static void MidiBufferMixdown(void* mixbuffer, void** src_buffers, int src_count next_buf_index = i; } } - assert(next_event != 0); + if (next_event == 0) { + jack_error("Jack::MidiBufferMixdown - got invalid next event"); + break; + } // write the event jack_midi_data_t* dest = mix->ReserveEvent(next_event->time, next_event->size); -- cgit v1.2.1