summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui_dialogs.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-11-04 23:41:52 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-11-04 23:41:52 +0000
commit204d840c43445745942eb834c120cbeaff77809e (patch)
treea7e3f08259a9098132b688a14c1af259799fa2aa /gtk2_ardour/ardour_ui_dialogs.cc
parent0ede2d0088d6ffdbde8a2c9ec40c457e98bdabe9 (diff)
a variety of fixes aimed at preventing crashes caused by the (global) port matrix (window) not really noticing that the session has gone away
git-svn-id: svn://localhost/ardour2/branches/3.0@13378 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_dialogs.cc')
-rw-r--r--gtk2_ardour/ardour_ui_dialogs.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc
index 0116f4e842..02c72d7230 100644
--- a/gtk2_ardour/ardour_ui_dialogs.cc
+++ b/gtk2_ardour/ardour_ui_dialogs.cc
@@ -62,6 +62,13 @@ ARDOUR_UI::set_session (Session *s)
{
SessionHandlePtr::set_session (s);
+ for (ARDOUR::DataType::iterator i = ARDOUR::DataType::begin(); i != ARDOUR::DataType::end(); ++i) {
+ GlobalPortMatrixWindow* w;
+ if ((w = _global_port_matrix[*i]->get()) != 0) {
+ w->set_session (s);
+ }
+ }
+
if (!_session) {
return;
}