From d20441ad627054559fca690e67ada64d0a424afe Mon Sep 17 00:00:00 2001 From: jules Date: Wed, 5 Mar 2014 11:40:53 +0000 Subject: [PATCH] win32 midi - handling for drivers returning a MIDIERR_NOTREADY error. --- modules/juce_audio_devices/native/juce_win32_Midi.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/juce_audio_devices/native/juce_win32_Midi.cpp b/modules/juce_audio_devices/native/juce_win32_Midi.cpp index 8f8dd17bd2..fd5e60c533 100644 --- a/modules/juce_audio_devices/native/juce_win32_Midi.cpp +++ b/modules/juce_audio_devices/native/juce_win32_Midi.cpp @@ -478,6 +478,12 @@ void MidiOutput::sendMessageNow (const MidiMessage& message) } else { - midiOutShortMsg (handle->handle, *(unsigned int*) message.getRawData()); + for (int i = 0; i < 50; ++i) + { + if (midiOutShortMsg (handle->handle, *(unsigned int*) message.getRawData()) != MIDIERR_NOTREADY) + break; + + Sleep (1); + } } }