diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-03-30 15:27:18 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-03-30 15:27:23 -0400 |
commit | 75e0f5a023b5485a6f6efb3ebd6f2ae21f5a041b (patch) | |
tree | 1f8c91929737d61ba785b463076f9b92427655ff /gtk2_ardour/route_ui.cc | |
parent | 16be88cdb6bdf1db167de6d3488e3599e6d9eeb1 (diff) |
remove GUI object state when tracks/busses are removed.
Not doing this results in accumulation of useless GUI object state which is never cleaned up.
Taken from work by Grygorii Zharun.
Diffstat (limited to 'gtk2_ardour/route_ui.cc')
-rw-r--r-- | gtk2_ardour/route_ui.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index 118306c29c..f038ead366 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -87,9 +87,11 @@ RouteUI::RouteUI (ARDOUR::Session* sess) RouteUI::~RouteUI() { + gui_object_state().remove_node(route_state_id()); + _route.reset (); /* drop reference to route, so that it can be cleaned up */ route_connections.drop_connections (); - + delete solo_menu; delete mute_menu; delete sends_menu; |