From 532e2128823823fd4b71922fbb144a24216d4969 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sat, 29 Jan 2022 05:13:23 +0100 Subject: [PATCH] Speed up Route deletion Session::remove_routes() first calls IO::disconnect() before eventually calling route->drop_references(). RouteTimeAxisView::io_changed() is called while the route still exists and requests a redraw which in turn emits _stripable->gui_changed ("track_height"). Since the RTAV is deleted later during an idle-callback, there was another redraw performed just before the RTAV is actually deleted. --- gtk2_ardour/route_time_axis.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk2_ardour/route_time_axis.cc b/gtk2_ardour/route_time_axis.cc index 02a795b8a9..12799ab21c 100644 --- a/gtk2_ardour/route_time_axis.cc +++ b/gtk2_ardour/route_time_axis.cc @@ -2277,7 +2277,7 @@ void RouteTimeAxisView::io_changed (IOChange /*change*/, void */*src*/) { reset_meter (); - if (_route && !no_redraw) { + if (_route && !no_redraw && !_session->routes_deletion_in_progress ()) { request_redraw (); } }