summaryrefslogtreecommitdiff
path: root/libs/ardour/automatable.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-06-28 18:43:31 +0200
committerRobin Gareus <robin@gareus.org>2016-06-28 18:43:31 +0200
commitdbb26485df31bbf3bd0aeb83e3e01d42e25fbd07 (patch)
tree35e0913e942b405d4eec68129c8e4dc67dd7a393 /libs/ardour/automatable.cc
parent48fe9983f739fe3b8ac212a147d7452e96e1e700 (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.cc7
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, "