summaryrefslogtreecommitdiff
path: root/gtk2_ardour/processor_box.h
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.h
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.h')
-rw-r--r--gtk2_ardour/processor_box.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gtk2_ardour/processor_box.h b/gtk2_ardour/processor_box.h
index 27c529980f..5dd7483be4 100644
--- a/gtk2_ardour/processor_box.h
+++ b/gtk2_ardour/processor_box.h
@@ -250,12 +250,17 @@ private:
bool on_button_press_event (GdkEventButton *ev);
bool on_button_release_event (GdkEventButton *ev);
+ void plugin_going_away () {
+ _qdraw_connection.disconnect ();
+ }
+
void update_height_alloc (uint32_t inline_height);
virtual uint32_t render_inline (cairo_t *, uint32_t width);
ProcessorEntry& _entry;
boost::shared_ptr<ARDOUR::Plugin> _plug;
PBD::ScopedConnection _qdraw_connection;
+ PBD::ScopedConnection _death_connection;
cairo_surface_t* _surf;
uint32_t _max_height;
uint32_t _cur_height;