summaryrefslogtreecommitdiff
path: root/libs/ardour/route.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-04-25 11:03:08 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-05-31 15:30:41 -0400
commit1e9b2abe730b89ff212ef61cee9e7112bf7c8f50 (patch)
tree2d666b2fab23475235b53bcc799a3ad9f5cab954 /libs/ardour/route.cc
parent760beab7fa1b3fcccd653279ad736656793302ea (diff)
save and restore vca assignments
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r--libs/ardour/route.cc15
1 files changed, 7 insertions, 8 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 301c7ba5c0..3e424a9603 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -2447,6 +2447,8 @@ Route::state(bool full_state)
foreach_processor (sigc::bind (sigc::mem_fun (*this, &Route::set_plugin_state_dir), ""));
}
+ node->add_child_copy (Slavable::get_state());
+
return *node;
}
@@ -2517,21 +2519,16 @@ Route::set_state (const XMLNode& node, int version)
} else if (prop->value() == "Output") {
_output->set_state (*child, version);
}
- }
- if (child->name() == X_("Processor")) {
+ } else if (child->name() == X_("Processor")) {
processor_state.add_child_copy (*child);
- }
-
- if (child->name() == X_("Pannable")) {
+ } else if (child->name() == X_("Pannable")) {
if (_pannable) {
_pannable->set_state (*child, version);
} else {
warning << string_compose (_("Pannable state found for route (%1) without a panner!"), name()) << endmsg;
}
- }
-
- if (child->name() == Controllable::xml_node_name) {
+ } else if (child->name() == Controllable::xml_node_name) {
if ((prop = child->property (X_("name"))) == 0) {
continue;
}
@@ -2547,6 +2544,8 @@ Route::set_state (const XMLNode& node, int version)
} else if (prop->value() == _solo_control->name()) {
_mute_control->set_state (*child, version);
}
+ } else if (child->name() == Slavable::xml_node_name) {
+ Slavable::set_state (*child, version);
}
}