diff options
author | Robin Gareus <robin@gareus.org> | 2014-11-29 01:35:49 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-11-29 10:06:25 +0100 |
commit | 58663db3743dbb5feddd9fc4221e7a328ef3b4ed (patch) | |
tree | 540cc34efde1549482e91f68390e1e7d727468d9 /libs/ardour/ardour/processor.h | |
parent | 784b96e255e67f5166e1c610dea950eaf0a1f025 (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/ardour/processor.h')
-rw-r--r-- | libs/ardour/ardour/processor.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/ardour/processor.h b/libs/ardour/ardour/processor.h index 85d466a169..4f8434f179 100644 --- a/libs/ardour/ardour/processor.h +++ b/libs/ardour/ardour/processor.h @@ -35,6 +35,7 @@ #include "ardour/automatable.h" class XMLNode; +class ProcessorWindowProxy; namespace ARDOUR { @@ -114,6 +115,9 @@ class LIBARDOUR_API Processor : public SessionObject, public Automatable, public void set_ui (void*); void* get_ui () const { return _ui_pointer; } + ProcessorWindowProxy * window_proxy () const { return _window_proxy; } + void set_window_proxy (ProcessorWindowProxy* wp); + void set_owner (SessionObject*); SessionObject* owner() const; @@ -129,6 +133,7 @@ protected: bool _display_to_user; bool _pre_fader; ///< true if this processor is currently placed before the Amp, otherwise false void* _ui_pointer; + ProcessorWindowProxy *_window_proxy; SessionObject* _owner; }; |