From 50e5e3bd8f82d828ef528fdcd98fa28c2c2c8fb7 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 23 Jul 2024 18:56:26 +0200 Subject: [PATCH] Consistently ignore punch-in/out without punch-range --- libs/ardour/route.cc | 2 +- libs/ardour/session.cc | 2 +- libs/ardour/session_transport.cc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index 8cba924ed6..88270fe515 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -6198,7 +6198,7 @@ Route::monitoring_state () const * TODO: FIXME */ - if (_session.config.get_punch_in() || _session.config.get_punch_out()) { + if ((_session.config.get_punch_in() || _session.config.get_punch_out()) && 0 != _session.locations()->auto_punch_location ()) { session_rec = _session.actively_recording (); } else { session_rec = _session.get_record_enabled(); diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index fb838e483d..ca900c99d6 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -2288,7 +2288,7 @@ Session::maybe_enable_record (bool rt_context) if (_transport_fsm->transport_speed() != 0) { maybe_allow_only_punch (); - if (!config.get_punch_in()) { + if (!config.get_punch_in() || 0 == locations()->auto_punch_location ()) { enable_record (); } /* When rolling, start recording immediately. diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index 6d17ecd532..a965c127cf 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -521,7 +521,7 @@ Session::start_transport (bool after_loop) switch (record_status()) { case Enabled: - if (!config.get_punch_in()) { + if (!config.get_punch_in() || 0 == locations()->auto_punch_location ()) { /* This is only for UIs (keep blinking rec-en before * punch-in, don't show rec-region etc). The UI still * depends on SessionEvent::PunchIn and ensuing signals.