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");
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.