From 5531a440c990391241292a864f9c71d3b7625c45 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 26 Nov 2018 21:45:06 +0100 Subject: [PATCH] Fix stuck connection block when template load fails. Session::new_route_from_template() unconditionally calls IO::disable_connecting(), and needs to be reverted likewise (no RAII here). --- libs/ardour/session.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index f5920f96e4..6fd6a9474c 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -3451,6 +3451,11 @@ Session::new_route_from_template (uint32_t how_many, PresentationInfo::order_t i goto out; } + catch (...) { + IO::enable_connecting (); + throw; + } + --how_many; } @@ -3462,9 +3467,10 @@ Session::new_route_from_template (uint32_t how_many, PresentationInfo::order_t i } else { add_routes (ret, true, true, false, insert_at); } - IO::enable_connecting (); } + IO::enable_connecting (); + return ret; }