diff options
author | Robin Gareus <robin@gareus.org> | 2016-06-28 18:43:31 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-06-28 18:43:31 +0200 |
commit | dbb26485df31bbf3bd0aeb83e3e01d42e25fbd07 (patch) | |
tree | 35e0913e942b405d4eec68129c8e4dc67dd7a393 /libs/ardour/automatable.cc | |
parent | 48fe9983f739fe3b8ac212a147d7452e96e1e700 (diff) |
ignore automation for non-automatables.
Since 4.7-1477-g2c6d595 Ardour implements Control::NotAutomatable.
This can lead to situations where automation exists for parameters that
were not supposed to be automatable, which in turn caused a
"programming-error" abort() in
RouteTimeAxisView::add_processor_automation_curve()
Diffstat (limited to 'libs/ardour/automatable.cc')
-rw-r--r-- | libs/ardour/automatable.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/ardour/automatable.cc b/libs/ardour/automatable.cc index e108676fa7..dfc7be417a 100644 --- a/libs/ardour/automatable.cc +++ b/libs/ardour/automatable.cc @@ -233,7 +233,12 @@ Automatable::set_automation_xml_state (const XMLNode& node, Evoral::Parameter le if (param.type() == NullAutomation) { warning << "Automation has null type" << endl; continue; - } + } + + if (_can_automate_list.find (param) == _can_automate_list.end ()) { + warning << "Ignored automation data for non-automatable parameter" << endl; + continue; + } if (!id_prop) { warning << "AutomationList node without automation-id property, " |