X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fport_matrix.cc;h=bf9da544e6b36fe4c4ecb5f37098ea6f157fc5ab;hb=8dc41bb7002d04aab21d551db8a1f48b43d36980;hp=6bd9d962629d499c007760ac22fc584c6232062c;hpb=9aacefc17010a889222425f97b99050171165038;p=ardour.git diff --git a/gtk2_ardour/port_matrix.cc b/gtk2_ardour/port_matrix.cc index 6bd9d96262..bf9da544e6 100644 --- a/gtk2_ardour/port_matrix.cc +++ b/gtk2_ardour/port_matrix.cc @@ -43,6 +43,7 @@ using namespace std; using namespace Gtk; using namespace ARDOUR; +using namespace ARDOUR_UI_UTILS; /** PortMatrix constructor. * @param session Our session. @@ -609,6 +610,7 @@ PortMatrix::disassociate_all_on_channel (boost::weak_ptr bundle, uint32_ void PortMatrix::setup_global_ports () { + if (!_session || _session->deletion_in_progress()) return; ENSURE_GUI_THREAD (*this, &PortMatrix::setup_global_ports) for (int i = 0; i < 2; ++i) { @@ -707,7 +709,7 @@ PortMatrix::io_from_bundle (boost::shared_ptr b) const bool PortMatrix::can_add_channels (boost::shared_ptr b) const { - return io_from_bundle (b); + return io_from_bundle (b) != 0; } void @@ -730,7 +732,7 @@ PortMatrix::add_channel (boost::shared_ptr b, DataType t) bool PortMatrix::can_remove_channels (boost::shared_ptr b) const { - return io_from_bundle (b); + return io_from_bundle (b) != 0; } void