Glib::PatternSpec dll_extension_pattern("*backendRDC.dll");
#endif
#else
- Glib::PatternSpec dll_extension_pattern("*backend.dll");
+ Glib::PatternSpec dll_extension_pattern("*backend*.dll");
#endif
find_matching_files_in_search_path (backend_search_path (),
{
if (_backend) {
_backend->stop ();
+ _backend->drop_device();
_backend.reset ();
}
}
if (b->second->instantiate (arg1, arg2)) {
throw failed_constructor ();
}
-
+
_backend = b->second->factory (*this);
} catch (exception& e) {
bool
AudioEngine::setup_required () const
{
- /* If there is only a single backend and it claims to be configured
- * already there is no setup to be done.
- *
- * Primarily for a case where there is only a JACK backend and
- * JACK is already running.
- */
-
- if (_backends.size() == 1 && _backends.begin()->second->already_configured()) {
- return false;
+ if (_backend) {
+ if (_backend->info().already_configured())
+ return false;
+ } else {
+ if (_backends.size() == 1 && _backends.begin()->second->already_configured()) {
+ return false;
+ }
}
-
+
return true;
}