From 02a98547f153b63ee17eab9c6bf6c71fc026652e Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 27 Sep 2012 14:11:01 +0000 Subject: [PATCH] different version of previous commit that leaves previous semantics intact unless punch in/out are enabled git-svn-id: svn://localhost/ardour2/branches/3.0@13200 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/track.cc | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/libs/ardour/track.cc b/libs/ardour/track.cc index 89ef0241f8..24f486fa61 100644 --- a/libs/ardour/track.cc +++ b/libs/ardour/track.cc @@ -832,10 +832,22 @@ Track::monitoring_state () const bool const roll = _session.transport_rolling (); bool const track_rec = _diskstream->record_enabled (); - bool const session_rec = _session.actively_recording (); bool const auto_input = _session.config.get_auto_input (); bool const software_monitor = Config->get_monitoring_model() == SoftwareMonitoring; bool const tape_machine_mode = Config->get_tape_machine_mode (); + bool session_rec; + + /* I suspect that just use actively_recording() is good enough all the + * time, but just to keep the semantics the same as they were before + * sept 26th 2012, we differentiate between the cases where punch is + * enabled and those where it is not. + */ + + if (_session.config.get_punch_in() || _session.config.get_punch_out()) { + session_rec = _session.actively_recording (); + } else { + session_rec = _session.get_record_enabled(); + } if (track_rec) {