summaryrefslogtreecommitdiff
path: root/gtk2_ardour/processor_box.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-07-18 23:51:10 +0200
committerRobin Gareus <robin@gareus.org>2016-07-18 23:52:40 +0200
commit901f8caf22b172db674579257744e25891fd1b83 (patch)
tree6c6c747caef2fd69609de9cea5c209c679a7b592 /gtk2_ardour/processor_box.cc
parenta450024c56a6a023a985adea4c542f9cc02dd6f3 (diff)
add a plugin-death connection
at application exit, there may otherwise be a race condition, queue draw could be scheduled for a widget that's no longer present.
Diffstat (limited to 'gtk2_ardour/processor_box.cc')
-rw-r--r--gtk2_ardour/processor_box.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index c01d9e497c..4ba27f10a6 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -1518,6 +1518,7 @@ ProcessorEntry::PluginDisplay::PluginDisplay (ProcessorEntry& e, boost::shared_p
{
set_name ("processor prefader");
add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
+ _plug->DropReferences.connect (_death_connection, invalidator (*this), boost::bind (&PluginDisplay::plugin_going_away, this), gui_context());
_plug->QueueDraw.connect (_qdraw_connection, invalidator (*this),
boost::bind (&Gtk::Widget::queue_draw, this), gui_context ());