summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-11-23 22:10:49 +0000
committerCarl Hetherington <carl@carlh.net>2010-11-23 22:10:49 +0000
commit0ee9f216d52fb8d98324b9348ed9425be99f1e14 (patch)
tree5899f2ece3dd86ff60632358cd4cfb0dbcc7d29d /libs
parentd2c530bc9e44f0699979df3cad4aa638752522c8 (diff)
Save solo isolate / solo safe states. Fixes #3551.
git-svn-id: svn://localhost/ardour2/branches/3.0@8078 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/route.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index dd328cd301..ed36a1a3b1 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -1763,6 +1763,8 @@ Route::state(bool full_state)
node->add_property ("soloed-by-upstream", buf);
snprintf (buf, sizeof (buf), "%d", _soloed_by_others_downstream);
node->add_property ("soloed-by-downstream", buf);
+ node->add_property ("solo-isolated", solo_isolated() ? "yes" : "no");
+ node->add_property ("solo-safe", _solo_safe ? "yes" : "no");
node->add_child_nocopy (_input->state (full_state));
node->add_child_nocopy (_output->state (full_state));
@@ -1877,6 +1879,10 @@ Route::_set_state (const XMLNode& node, int version, bool /*call_base*/)
set_solo_isolated (string_is_affirmative (prop->value()), this);
}
+ if ((prop = node.property ("solo-safe")) != 0) {
+ set_solo_safe (string_is_affirmative (prop->value()), this);
+ }
+
if ((prop = node.property (X_("phase-invert"))) != 0) {
set_phase_invert (boost::dynamic_bitset<> (prop->value ()));
}