Unconditionally save instant.xml on session-close
[ardour.git] / gtk2_ardour / route_ui.cc
index 2fdecbc5ec967cdd9c5d4d60be20bef032b4c878..a22eca4a181e6e384be295d77b3f27f63722b007 100644 (file)
@@ -340,7 +340,7 @@ RouteUI::set_route (boost::shared_ptr<Route> rp)
        _route->solo_safe_control()->Changed.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::update_solo_display, this), gui_context());
        _route->solo_isolate_control()->Changed.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::update_solo_display, this), gui_context());
        _route->phase_control()->Changed.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::polarity_changed, this), gui_context());
-       _route->fan_out.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::fan_out, this, true, true), gui_context());
+       _route->fan_out.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::fan_out, this, false, true), gui_context());
 
        if (is_track()) {
                track()->FreezeChange.connect (*this, invalidator (*this), boost::bind (&RouteUI::map_frozen, this), gui_context());
@@ -2368,6 +2368,12 @@ RouteUI::fan_out (bool to_busses, bool group)
        route->output ()->disconnect (this);
        route->panner_shell ()->set_bypassed (true);
 
+       boost::shared_ptr<AutomationControl> msac = route->master_send_enable_controllable ();
+       if (msac) {
+               msac->start_touch (msac->session().transport_sample());
+               msac->set_value (0, PBD::Controllable::NoGroup);
+       }
+
        RouteList to_group;
        for (uint32_t p = 0; p < n_outputs; ++p) {
                const Plugin::IOPortDescription& pd (plugin->describe_io_port (DataType::AUDIO, false, p));