From 10bcd0c2d76abd31063671d71ad1ff9ddcca950a Mon Sep 17 00:00:00 2001 From: Jonathan Moore Liles Date: Sat, 26 Sep 2020 20:32:51 -0700 Subject: [PATCH] Midi-Mapper: Don't get confused if user neglects to operate all controls on the first run. --- mixer/src/midi-mapper.C | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mixer/src/midi-mapper.C b/mixer/src/midi-mapper.C index bd2f31a..76dc4ec 100644 --- a/mixer/src/midi-mapper.C +++ b/mixer/src/midi-mapper.C @@ -436,7 +436,10 @@ save_settings ( void ) return true; } - + + +static int max_signal = 0; + bool load_settings ( void ) @@ -451,12 +454,16 @@ load_settings ( void ) char *signal_name; char *midi_event; + max_signal = 0; + while ( 2 == fscanf( fp, "[%m[^]]] %m[^\n]\n", &midi_event, &signal_name ) ) { DMESSAGE( "%s, %s", midi_event, signal_name ); if ( sig_map.find( midi_event ) == sig_map.end() ) { + ++max_signal; + signal_mapping m; m.deserialize( midi_event ); @@ -700,8 +707,6 @@ main ( int argc, char **argv ) DMESSAGE( "waiting for events" ); - static int max_signal = 1; - jack_midi_event_t ev; midievent e; while ( ! got_sigterm ) @@ -749,7 +754,7 @@ main ( int argc, char **argv ) { char *s; - asprintf( &s, "/control/%i", max_signal++ ); + asprintf( &s, "/control/%i", ++max_signal ); signal_mapping m;