summaryrefslogtreecommitdiff
path: root/libs/ardour/route.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-06-13 23:00:24 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-06-13 23:00:24 -0400
commitf00b3b7f111e36537d773daef0ae77b03d11f82f (patch)
tree4bfdd432199a7d4a4cbfc7769493e6bedaa5e51f /libs/ardour/route.cc
parent31d234b48c36bddb4d5228a3abee9c4419403879 (diff)
parent80a13145f398e1c4ea22b3f8a25a5b38d3c5e328 (diff)
merge with master
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r--libs/ardour/route.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 29e778e415..e84e8b6d93 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -2551,10 +2551,21 @@ Route::set_processor_state (const XMLNode& node)
continue;
}
+#ifndef NO_PLUGIN_STATE
if (processor->set_state (**niter, Stateful::current_state_version) != 0) {
/* This processor could not be configured. Turn it into a UnknownProcessor */
processor.reset (new UnknownProcessor (_session, **niter));
}
+#else
+ if (boost::dynamic_pointer_cast<PluginInsert>(processor)) {
+ if (processor->set_state (**niter, Stateful::current_state_version) != 0) {
+ /* This processor could not be configured. Turn it into a UnknownProcessor */
+ processor.reset (new UnknownProcessor (_session, **niter));
+ }
+ } else {
+ /* plugin, but ::set_state() not * allowed no message here - things will get too verbose */
+ }
+#endif
/* we have to note the monitor send here, otherwise a new one will be created
and the state of this one will be lost.