diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2019-10-18 00:07:31 -0600 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2019-10-18 00:07:31 -0600 |
commit | 0d86819a2b918e767253e2b4b0abbebeb30cf23f (patch) | |
tree | 9d6b8d1540fcf7567ad31057d9931850d2c7bb17 /gtk2_ardour/ardour_ui_startup.cc | |
parent | ebb89ba80522448527f0bd3f9efdb810d8df8506 (diff) |
fix two thinkos with startup sequence
1) audio/MIDI setup was being shown unnecessarily
2) could crash if entire startup sequence passed without any dialogs being necessary
Diffstat (limited to 'gtk2_ardour/ardour_ui_startup.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_startup.cc | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/gtk2_ardour/ardour_ui_startup.cc b/gtk2_ardour/ardour_ui_startup.cc index 1310a89e4d..e321c6fe38 100644 --- a/gtk2_ardour/ardour_ui_startup.cc +++ b/gtk2_ardour/ardour_ui_startup.cc @@ -452,6 +452,7 @@ ARDOUR_UI::nsm_init () void ARDOUR_UI::sfsm_response (StartupFSM::Result r) { + std::cerr << "sfsm::R (" << r << ")\n"; switch (r) { case StartupFSM::ExitProgram: cerr << "ExitProgram\n"; @@ -496,10 +497,19 @@ ARDOUR_UI::starting () startup_fsm = new StartupFSM (*amd); - startup_fsm->start (); startup_fsm->signal_response().connect (sigc::mem_fun (*this, &ARDOUR_UI::sfsm_response)); - if (startup_fsm->brand_new_user()) { + /* Note: entire startup process could happen in this one call + * if: + * + * 1) not a new user + * 2) session name provided on command line (and valid) + * 3) no audio/MIDI setup required + */ + + startup_fsm->start (); + + if (startup_fsm && startup_fsm->brand_new_user()) { _initial_verbose_plugin_scan = true; } } |