diff options
-rw-r--r-- | sound/midiparser_xmidi.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/sound/midiparser_xmidi.cpp b/sound/midiparser_xmidi.cpp index 08fdfd657b..1a90f24703 100644 --- a/sound/midiparser_xmidi.cpp +++ b/sound/midiparser_xmidi.cpp @@ -104,14 +104,12 @@ void MidiParser_XMIDI::parseNextEvent(EventInfo &info) { if (info.basic.param1 == 0x74) { // XMIDI_CONTROLLER_FOR_LOOP - byte *pos = _position._play_pos - 3; - if (_loopCount < 0 || _loop[_loopCount].pos != pos) { - if (_loopCount < ARRAYSIZE(_loop) - 1) - _loopCount++; + byte *pos = _position._play_pos; + if (_loopCount < ARRAYSIZE(_loop) - 1) + _loopCount++; - _loop[_loopCount].pos = pos; - _loop[_loopCount].repeat = info.basic.param2; - } + _loop[_loopCount].pos = pos; + _loop[_loopCount].repeat = info.basic.param2; } else if (info.basic.param1 == 0x75) { // XMIDI_CONTROLLER_NEXT_BREAK if (_loopCount >= 0) { |