From a10a7901aad4058c43287a4f6272e2274e48f4fb Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Fri, 18 Jul 2008 22:17:22 +0000 Subject: [PATCH] range-checking for keys of input-events git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1343 0778d3d1-df1d-0410-868b-ea421aaaa00d --- src/core/midi/midi_port.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/core/midi/midi_port.cpp b/src/core/midi/midi_port.cpp index 3baf4e0cc..094040151 100644 --- a/src/core/midi/midi_port.cpp +++ b/src/core/midi/midi_port.cpp @@ -127,6 +127,15 @@ void midiPort::processInEvent( const midiEvent & _me, const midiTime & _time ) if( ( mode() == Input || mode() == Duplex ) && ( inputChannel()-1 == _me.m_channel || inputChannel() == 0 ) ) { + if( _me.m_type == MidiNoteOn || + _me.m_type == MidiNoteOff || + _me.m_type == MidiKeyPressure ) + { + if( _me.key() < 0 || _me.key() >= NumKeys ) + { + return; + } + } midiEvent ev = _me; if( m_defaultVelocityInEnabledModel.value() == TRUE && _me.velocity() > 0 )