summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-11-26 13:26:30 +0000
committerCarl Hetherington <carl@carlh.net>2009-11-26 13:26:30 +0000
commitb3d86acf38e3a433e601c19ca6dd68555182da83 (patch)
tree91944d8e6fc92d8f1dd58742e9ec01d9ea55127b /gtk2_ardour
parent966e09677d74be7d54ac253a6c244882d6efaffd (diff)
Fix various crashes on session close.
git-svn-id: svn://localhost/ardour2/branches/3.0@6186 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui.cc7
-rw-r--r--gtk2_ardour/ardour_ui_dependents.cc7
2 files changed, 8 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index 630716b4a1..c51df14a74 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -775,8 +775,15 @@ If you still wish to quit, please use the\n\n\
}
}
+ second_connection.disconnect ();
+ point_one_second_connection.disconnect ();
+ point_oh_five_second_connection.disconnect ();
+ point_zero_one_second_connection.disconnect();
+
// session->set_deletion_in_progress ();
+ session->remove_pending_capture_state ();
delete session;
+ session = 0;
}
ArdourDialog::close_all_dialogs ();
diff --git a/gtk2_ardour/ardour_ui_dependents.cc b/gtk2_ardour/ardour_ui_dependents.cc
index 0850d0d707..9a9a575e73 100644
--- a/gtk2_ardour/ardour_ui_dependents.cc
+++ b/gtk2_ardour/ardour_ui_dependents.cc
@@ -50,12 +50,6 @@ using namespace ARDOUR;
void
ARDOUR_UI::shutdown ()
{
- if (session) {
- /* we're exiting cleanly, so remove any auto-save data */
- session->remove_pending_capture_state ();
- session = 0;
- }
-
ui_config->save_state();
}
@@ -124,6 +118,7 @@ ARDOUR_UI::toggle_editor_mixer_on_top ()
}
}
+/** The main editor window has been closed */
gint
ARDOUR_UI::exit_on_main_window_close (GdkEventAny * /*ev*/)
{