Fix infinite loop when receiving midi message over 4 bytes in size
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
58339d454f
commit
0e999f34e1
|
@ -373,13 +373,12 @@ void DistrhoPluginNekobi::run(const float**, float** outputs, uint32_t frames, c
|
||||||
fSynth.nugget_remains = XSYNTH_NUGGET_SIZE;
|
fSynth.nugget_remains = XSYNTH_NUGGET_SIZE;
|
||||||
|
|
||||||
/* process any ready events */
|
/* process any ready events */
|
||||||
while (curEventIndex < midiEventCount && framesDone == midiEvents[curEventIndex].frame)
|
for (; curEventIndex < midiEventCount && framesDone == midiEvents[curEventIndex].frame; ++curEventIndex)
|
||||||
{
|
{
|
||||||
if (midiEvents[curEventIndex].size > MidiEvent::kDataSize)
|
if (midiEvents[curEventIndex].size > MidiEvent::kDataSize)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
nekobee_handle_raw_event(&fSynth, midiEvents[curEventIndex].size, midiEvents[curEventIndex].data);
|
nekobee_handle_raw_event(&fSynth, midiEvents[curEventIndex].size, midiEvents[curEventIndex].data);
|
||||||
curEventIndex++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* calculate the sample count (burstSize) for the next nekobee_voice_render() call to be the smallest of:
|
/* calculate the sample count (burstSize) for the next nekobee_voice_render() call to be the smallest of:
|
||||||
|
|
Loading…
Reference in New Issue