summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-02-28 04:19:16 +0100
committerRobin Gareus <robin@gareus.org>2019-02-28 04:49:27 +0100
commitd2b73141af83ce343b129105604728a11dc6dbac (patch)
tree7369b109def2381af0d323f5125ede92961730d8
parent5d4fbcb1eae6e9b01cd32ff7e4470559bfd66b89 (diff)
Fix analysis plugin when using plugin-presets
-rw-r--r--libs/ardour/plugin.cc1
-rw-r--r--libs/ardour/plugin_insert.cc10
2 files changed, 11 insertions, 0 deletions
diff --git a/libs/ardour/plugin.cc b/libs/ardour/plugin.cc
index b0d809b1c3..726337136a 100644
--- a/libs/ardour/plugin.cc
+++ b/libs/ardour/plugin.cc
@@ -112,6 +112,7 @@ Plugin::Plugin (const Plugin& other)
, _for_impulse_analysis (false)
, _have_presets (false)
, _have_pending_stop_events (false)
+ , _last_preset (other._last_preset)
, _parameter_changed_since_last_preset (false)
, _immediate_events(6096) // FIXME: size?
{
diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc
index f7712f8add..e1554cc8f1 100644
--- a/libs/ardour/plugin_insert.cc
+++ b/libs/ardour/plugin_insert.cc
@@ -574,6 +574,10 @@ PluginInsert::parameter_changed_externally (uint32_t which, float val)
(*i)->set_parameter (which, val);
}
}
+ boost::shared_ptr<Plugin> iasp = _impulseAnalysisPlugin.lock();
+ if (iasp) {
+ iasp->set_parameter (which, val);
+ }
}
int
@@ -3171,6 +3175,12 @@ PluginInsert::load_preset (ARDOUR::Plugin::PresetRecord pr)
ok = false;
}
}
+
+ boost::shared_ptr<Plugin> iasp = _impulseAnalysisPlugin.lock();
+ if (iasp) {
+ iasp->load_preset (pr);
+ }
+
return ok;
}