skip unavailable backends early on.
[ardour.git] / libs / ardour / audioengine.cc
index 7c512db625a87196306defa7fb78e336a3bb9d79..076700cebfec5a8445d0c473b65c36e3d2eb4618 100644 (file)
@@ -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;
 }