no audio backend after the last changes
Tito Latini <[email protected]>
| Newsgroups | gmane.comp.audio.ardour.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, the config file in "${HOME}.config/ardour3" contains the extra
information about an engine state with
active="no"
and Ardour doesn't start because in engine_dialog.cc:1444 there is
for (StateList::const_iterator i = states.begin(); i != states.end(); ++i) {
if ((*i)->active) {
ignore_changes++;
backend_combo.set_active_text ((*i)->backend);
[...]
If an unique engine state is considered "active", the follow patch
is correct, otherwise now you know the problem.
diff --git a/gtk2_ardour/engine_dialog.cc b/gtk2_ardour/engine_dialog.cc
index a78b85e..a6b3e51 100644
--- a/gtk2_ardour/engine_dialog.cc
+++ b/gtk2_ardour/engine_dialog.cc
@@ -1248,6 +1248,7 @@ EngineControl::get_state ()
if (!states.empty()) {
XMLNode* state_nodes = new XMLNode ("EngineStates");
+ bool unique_state = (states.size() == 1);
for (StateList::const_iterator i = states.begin(); i != states.end(); ++i) {
@@ -1262,7 +1263,7 @@ EngineControl::get_state ()
node->add_property ("output-latency", (*i)->output_latency);
node->add_property ("input-channels", (*i)->input_channels);
node->add_property ("output-channels", (*i)->output_channels);
- node->add_property ("active", (*i)->active ? "yes" : "no");
+ node->add_property ("active", (*i)->active || unique_state ? "yes" : "no");
node->add_property ("midi-option", (*i)->midi_option);
XMLNode* midi_devices = new XMLNode ("MIDIDevices");