summaryrefslogtreecommitdiff
path: root/libs/ardour/audio_unit.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/audio_unit.cc')
-rw-r--r--libs/ardour/audio_unit.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/libs/ardour/audio_unit.cc b/libs/ardour/audio_unit.cc
index 9c7ea0f13f..16d5e390f8 100644
--- a/libs/ardour/audio_unit.cc
+++ b/libs/ardour/audio_unit.cc
@@ -103,7 +103,15 @@ AUPlugin::~AUPlugin ()
void
AUPlugin::init ()
{
- OSErr err = CAAudioUnit::Open (*(comp.get()), *unit);
+ OSErr err;
+
+ try {
+ err = CAAudioUnit::Open (*(comp.get()), *unit);
+ } catch (...) {
+ error << _("Exception thrown during AudioUnit plugin loading - plugin ignored") << endmsg;
+ cerr << _("Exception thrown during AudioUnit plugin loading - plugin ignored") << endl;
+ throw failed_constructor();
+ }
if (err != noErr) {
error << _("AudioUnit: Could not convert CAComponent to CAAudioUnit") << endmsg;
@@ -1090,6 +1098,7 @@ AUPluginInfo::cached_io_configuration (const std::string& unique_id,
} catch (...) {
warning << string_compose (_("Could not load AU plugin %1 - ignored"), name) << endmsg;
+ cerr << string_compose (_("Could not load AU plugin %1 - ignored"), name) << endl;
return false;
}