From b2d011442ac8c24a40d25b53340f73f226efebda Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 21 Mar 2025 22:54:25 -0600 Subject: [PATCH] no slot rec-enabling if the track is rec-enabled --- libs/ardour/triggerbox.cc | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libs/ardour/triggerbox.cc b/libs/ardour/triggerbox.cc index 2ecb2f28da..8cd36db922 100644 --- a/libs/ardour/triggerbox.cc +++ b/libs/ardour/triggerbox.cc @@ -293,6 +293,16 @@ Trigger::request_trigger_delete (Trigger* t) void Trigger::_arm (Temporal::BBT_Offset const & duration) { + Track* trk = static_cast (_box.owner()); + + if (trk->rec_enable_control()->get_value()) { + /* Cannot arm slots for recording if track is rec-enabled, + since that creates ambiguity about what the track is doing + during a process callback + */ + return; + } + if (_box.record_enabled() == Recording) { return; } @@ -301,7 +311,6 @@ Trigger::_arm (Temporal::BBT_Offset const & duration) _box.disarm_all (); - Track* trk = static_cast (_box.owner()); int chns; if (trk->data_type() == DataType::AUDIO) {