if (affect_transport) {
if (rolling) {
_session->request_stop (with_abort, true);
- } else {
+
+ } else if (!with_abort) { /* with_abort == true means the
+ * command was intended to stop
+ * transport, not start.
+ */
+
/* the only external sync condition we can be in here
* would be Engine (JACK) sync, in which case we still
* want to do this.
ARDOUR_UI::cancel_solo ()
{
if (_session) {
- if (_session) {
- _session->set_controls (route_list_to_control_list (_session->get_routes(), &Stripable::solo_control), 0.0, Controllable::NoGroup);
- }
+ _session->set_controls (route_list_to_control_list (_session->get_routes(), &Stripable::solo_control), 0.0, Controllable::NoGroup);
_session->clear_all_solo_state (_session->get_routes()); // safeguard, ideally this won't do anything, check the log-window
}
}