diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2018-02-23 14:56:58 -0500 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2018-02-23 14:57:04 -0500 |
commit | 2afc311f098217d3a86bd434996d45d3324b477c (patch) | |
tree | 1e1a5da9ff81efaad363d43a3c5eb28e070c0b0d /libs/ardour/midi_source.cc | |
parent | a23a8ebcad7ff5e362f27d6d742c6fe1dfe6ddcd (diff) |
catch (incorrect) inclusion of non-MIDI related automation parameters in MidiSource XML nodes
Diffstat (limited to 'libs/ardour/midi_source.cc')
-rw-r--r-- | libs/ardour/midi_source.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libs/ardour/midi_source.cc b/libs/ardour/midi_source.cc index d7bc4d333e..18efd4e9ea 100644 --- a/libs/ardour/midi_source.cc +++ b/libs/ardour/midi_source.cc @@ -123,6 +123,20 @@ MidiSource::set_state (const XMLNode& node, int /*version*/) } Evoral::Parameter p = EventTypeMap::instance().from_symbol (str); + switch (p.type()) { + case MidiCCAutomation: + case MidiPgmChangeAutomation: break; + case MidiChannelPressureAutomation: break; + case MidiNotePressureAutomation: break; + case MidiPitchBenderAutomation: break; + case MidiSystemExclusiveAutomation: + cerr << "Parameter \"" << str << "\" is system exclusive - no automation possible!\n"; + continue; + default: + cerr << "Parameter \"" << str << "\" found for MIDI source ... not legal; ignoring this parameter\n"; + continue; + } + if (!(*i)->get_property (X_("style"), str)) { error << _("Missing style property on InterpolationStyle") << endmsg; return -1; |