diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-05-22 09:47:40 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-05-31 15:30:44 -0400 |
commit | 66c7ef1fb5a8bf5b6dc6fb875bf3ccebe2f1c366 (patch) | |
tree | 86246c45e21f3465b91a297906a22258dfce5d5f /libs/ardour/solo_control.cc | |
parent | fefbc4df01127ffc455d271f070ac7970e6caa4c (diff) |
no-op: explanatory comments
Diffstat (limited to 'libs/ardour/solo_control.cc')
-rw-r--r-- | libs/ardour/solo_control.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libs/ardour/solo_control.cc b/libs/ardour/solo_control.cc index 9cf3c20599..a961fa0b1f 100644 --- a/libs/ardour/solo_control.cc +++ b/libs/ardour/solo_control.cc @@ -256,15 +256,22 @@ SoloControl::master_changed (bool /*from self*/, GroupControlDisposition, boost: _transition_into_solo = 0; + /* Notice that we call get_boolean_masters() BEFORE we call + * update_boolean_masters_records(), in order to know what + * our master state was BEFORE it gets changed. + */ + if (m->get_value()) { /* this master is now enabled */ if (!self_soloed() && get_boolean_masters() == 0) { + /* not self-soloed, wasn't soloed by masters before */ send_signal = true; _transition_into_solo = 1; } } else { if (!self_soloed() && get_boolean_masters() == 1) { + /* not self-soloed, soloed by just 1 master before */ _transition_into_solo = -1; send_signal = true; } |