diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-05-18 13:44:37 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-05-18 13:44:37 +0000 |
commit | c04d9d1975402c514d2feb44d997f0941d1f34c3 (patch) | |
tree | 5d3f31154f0e7703db0e5b11415376db53a5b40b /gtk2_ardour/engine_dialog.cc | |
parent | 06df411708c58987802ef10b8c3e2d50aad8e0e4 (diff) |
do not look for (and potentially exit) jack servers if jack is already running
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@5100 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/engine_dialog.cc')
-rw-r--r-- | gtk2_ardour/engine_dialog.cc | 40 |
1 files changed, 23 insertions, 17 deletions
diff --git a/gtk2_ardour/engine_dialog.cc b/gtk2_ardour/engine_dialog.cc index cf08f4ad68..74e1ab6508 100644 --- a/gtk2_ardour/engine_dialog.cc +++ b/gtk2_ardour/engine_dialog.cc @@ -276,23 +276,8 @@ EngineControl::EngineControl () ++row; #endif - find_jack_servers (server_strings); - - if (server_strings.empty()) { - fatal << _("No JACK server found anywhere on this system. Please install JACK and restart") << endmsg; - /*NOTREACHED*/ - } - - set_popdown_strings (serverpath_combo, server_strings); - serverpath_combo.set_active_text (server_strings.front()); - - if (server_strings.size() > 1) { - label = manage (new Label (_("Server:"))); - options_packer.attach (*label, 0, 1, row, row + 1, FILL|EXPAND, (AttachOptions) 0); - label->set_alignment (0.0, 0.5); - options_packer.attach (serverpath_combo, 1, 2, row, row + 1, FILL|EXPAND, (AttachOptions) 0); - ++row; - } + /* defer server stuff till later */ + server_row = row++; /* device settings */ @@ -354,6 +339,27 @@ EngineControl::~EngineControl () } void +EngineControl::discover_servers () +{ + find_jack_servers (server_strings); + + if (server_strings.empty()) { + fatal << _("No JACK server found anywhere on this system. Please install JACK and restart") << endmsg; + /*NOTREACHED*/ + } + + set_popdown_strings (serverpath_combo, server_strings); + serverpath_combo.set_active_text (server_strings.front()); + + if (server_strings.size() > 1) { + Gtk::Label* label = manage (new Label (_("Server:"))); + options_packer.attach (*label, 0, 1, server_row, server_row + 1, FILL|EXPAND, (AttachOptions) 0); + label->set_alignment (0.0, 0.5); + options_packer.attach (serverpath_combo, 1, 2, server_row, server_row + 1, FILL|EXPAND, (AttachOptions) 0); + } +} + +void EngineControl::build_command_line (vector<string>& cmd) { string str; |