summaryrefslogtreecommitdiff
path: root/libs/ardour/processor.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2014-11-29 01:35:49 +0100
committerRobin Gareus <robin@gareus.org>2014-11-29 10:06:25 +0100
commit58663db3743dbb5feddd9fc4221e7a328ef3b4ed (patch)
tree540cc34efde1549482e91f68390e1e7d727468d9 /libs/ardour/processor.cc
parent784b96e255e67f5166e1c610dea950eaf0a1f025 (diff)
change ownership of processor window-proxy
fixes crashes: * If the Editor-Mixer shows a channel with a plugin that has been edited in the Mixer, double-clicking the plugin will try to bring up a 2nd instance of the plugin-UI. * When closing Ardour both the Mixer and the Editor-Mixer try to delete the underlying plugin, resulting in a double free.
Diffstat (limited to 'libs/ardour/processor.cc')
-rw-r--r--libs/ardour/processor.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/libs/ardour/processor.cc b/libs/ardour/processor.cc
index d571f55688..ca1f71db5a 100644
--- a/libs/ardour/processor.cc
+++ b/libs/ardour/processor.cc
@@ -63,6 +63,7 @@ Processor::Processor(Session& session, const string& name)
, _display_to_user (true)
, _pre_fader (false)
, _ui_pointer (0)
+ , _window_proxy (0)
, _owner (0)
{
}
@@ -79,6 +80,8 @@ Processor::Processor (const Processor& other)
, _display_to_user (true)
, _pre_fader (false)
, _ui_pointer (0)
+ , _window_proxy (0)
+ , _owner (0)
{
}
@@ -272,6 +275,12 @@ Processor::set_ui (void* p)
}
void
+Processor::set_window_proxy (ProcessorWindowProxy* wp)
+{
+ _window_proxy = wp;
+}
+
+void
Processor::set_owner (SessionObject* o)
{
_owner = o;