diff --git a/libs/surfaces/faderport/faderport.cc b/libs/surfaces/faderport/faderport.cc index 329d34b8be..76e7c948dc 100644 --- a/libs/surfaces/faderport/faderport.cc +++ b/libs/surfaces/faderport/faderport.cc @@ -109,8 +109,8 @@ FaderPort::FaderPort (Session& s) ); /* Catch port connections and disconnections */ - ARDOUR::AudioEngine::instance()->PortConnectedOrDisconnected.connect (port_connection, MISSING_INVALIDATOR, boost::bind (&FaderPort::connection_handler, this, _1, _2, _3, _4, _5), this); - ARDOUR::AudioEngine::instance()->PortPrettyNameChanged.connect (port_connection, MISSING_INVALIDATOR, boost::bind (&FaderPort::ConnectionChange, this), this); /* notify GUI */ + ARDOUR::AudioEngine::instance()->PortConnectedOrDisconnected.connect (port_connections, MISSING_INVALIDATOR, boost::bind (&FaderPort::connection_handler, this, _1, _2, _3, _4, _5), this); + ARDOUR::AudioEngine::instance()->PortPrettyNameChanged.connect (port_connections, MISSING_INVALIDATOR, boost::bind (&FaderPort::ConnectionChange, this), this); /* notify GUI */ buttons.insert (std::make_pair (Mute, Button (*this, _("Mute"), Mute, 21))); buttons.insert (std::make_pair (Solo, Button (*this, _("Solo"), Solo, 22))); @@ -630,7 +630,7 @@ FaderPort::close () stop_midi_handling (); session_connections.drop_connections (); - port_connection.disconnect (); + port_connections.drop_connections (); blink_connection.disconnect (); selection_connection.disconnect (); stripable_connections.drop_connections (); diff --git a/libs/surfaces/faderport/faderport.h b/libs/surfaces/faderport/faderport.h index af6323fc40..87b0954704 100644 --- a/libs/surfaces/faderport/faderport.h +++ b/libs/surfaces/faderport/faderport.h @@ -183,7 +183,7 @@ class FaderPort : public ARDOUR::ControlProtocol, public AbstractUI, std::string name1, boost::weak_ptr, std::string name2, bool yn); - PBD::ScopedConnection port_connection; + PBD::ScopedConnectionList port_connections; enum ConnectionState { InputConnected = 0x1,