From b789cc4c682ba636829ebeaeb57b1c7584428025 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Fri, 22 Aug 2008 20:24:17 +0000 Subject: [PATCH] fixed strange ALSA-sequencer behaviour when using MIDI-controllers and controlling intrument-tracks via MIDI (closes #2062907) git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@1464 0778d3d1-df1d-0410-868b-ea421aaaa00d --- ChangeLog | 4 ++++ src/core/midi/midi_alsa_seq.cpp | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/ChangeLog b/ChangeLog index 28b177f67..8aaeefaba 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2008-08-22 Tobias Doerffel + * src/core/midi/midi_alsa_seq.cpp: + fixed strange ALSA-sequencer behaviour when using MIDI-controllers and + controlling intrument-tracks via MIDI (closes #2062907) + * src/gui/piano_roll.cpp: fixed notes appearing X times in pattern when recording from MIDI-device (closes #2058971) diff --git a/src/core/midi/midi_alsa_seq.cpp b/src/core/midi/midi_alsa_seq.cpp index 919cd6810..efcc38670 100644 --- a/src/core/midi/midi_alsa_seq.cpp +++ b/src/core/midi/midi_alsa_seq.cpp @@ -428,6 +428,10 @@ void midiALSASeq::run( void ) { break; } + + do // while event queue is not empty + { + snd_seq_event_t * ev; snd_seq_event_input( m_seqHandle, &ev ); @@ -521,6 +525,8 @@ void midiALSASeq::run( void ) break; } + } while( snd_seq_event_input_pending( m_seqHandle, 0 ) > 0 ); + } delete[] pollfd_set;