summaryrefslogtreecommitdiff
path: root/libs/ardour/audioengine.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2014-10-23 13:02:09 +0200
committerRobin Gareus <robin@gareus.org>2014-10-23 16:53:14 +0200
commit9a60bb58b2d2a247798d4580b31e41c34ee87807 (patch)
treeafed238f1b1846aee650b9f42bf10367ac97819a /libs/ardour/audioengine.cc
parentd991bb10cacc83792ae7fdc9fe3ce24cbffb42f1 (diff)
skip unavailable backends early on.
Diffstat (limited to 'libs/ardour/audioengine.cc')
-rw-r--r--libs/ardour/audioengine.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/libs/ardour/audioengine.cc b/libs/ardour/audioengine.cc
index 7c512db625..076700cebf 100644
--- a/libs/ardour/audioengine.cc
+++ b/libs/ardour/audioengine.cc
@@ -700,11 +700,14 @@ AudioEngine::backend_discover (const string& path)
error << Glib::Module::get_last_error() << endmsg;
return 0;
}
-
- module.make_resident ();
dfunc = (AudioBackendInfo* (*)(void))func;
info = dfunc();
+ if (!info->available()) {
+ return 0;
+ }
+
+ module.make_resident ();
return info;
}