From f19c01bbb42f4e80769adb8e3e1015724fe9d6c6 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 20 Apr 2009 21:00:30 +0000 Subject: fixes for possible null engine dialog git-svn-id: svn://localhost/ardour2/branches/3.0@4993 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/ardour_ui.cc | 8 ++++---- gtk2_ardour/startup.h | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'gtk2_ardour') diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index 9731501474..f82808dbff 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -526,8 +526,8 @@ ARDOUR_UI::save_ardour_state () XMLNode* node = new XMLNode (keyboard->get_state()); Config->add_extra_xml (*node); Config->add_extra_xml (get_transport_controllable_state()); - if (_startup && _startup->engine_control().was_used()) { - Config->add_extra_xml (_startup->engine_control().get_state()); + if (_startup && _startup->engine_control() && _startup->engine_control()->was_used()) { + Config->add_extra_xml (_startup->engine_control()->get_state()); } Config->save_state(); ui_config->save_state (); @@ -649,8 +649,8 @@ ARDOUR_UI::startup () bool backend_audio_is_running = EngineControl::engine_running(); XMLNode* audio_setup = Config->extra_xml ("AudioSetup"); - if (audio_setup) { - _startup->engine_control().set_state (*audio_setup); + if (audio_setup && _startup && _startup->engine_control()) { + _startup->engine_control()->set_state (*audio_setup); } if (!get_session_parameters (backend_audio_is_running, ARDOUR_COMMAND_LINE::new_session)) { diff --git a/gtk2_ardour/startup.h b/gtk2_ardour/startup.h index f01d972899..4d8bf8ee62 100644 --- a/gtk2_ardour/startup.h +++ b/gtk2_ardour/startup.h @@ -31,7 +31,7 @@ class ArdourStartup : public Gtk::Assistant { bool use_session_template() { return false; } Glib::ustring session_template_name() { return ""; } - EngineControl& engine_control() { return *engine_dialog; } + EngineControl* engine_control() { return engine_dialog; } // advanced session options -- cgit v1.2.3