diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index 82467c5003..52d2511510 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -1142,14 +1142,6 @@ Session::butler_transport_work (bool have_process_lock) } } - const int butler = g_atomic_int_get (&_butler_seek_counter); - const int rtlocates = g_atomic_int_get (&_seek_counter); - - if (butler != rtlocates) { - DEBUG_TRACE (DEBUG::Transport, string_compose ("nonrealtime locate invoked from BTW (butler has done %1, rtlocs %2)\n", butler, rtlocates)); - non_realtime_locate (); - } - if (ptw & PostTransportStop) { non_realtime_stop (ptw & PostTransportAbort, on_entry, finished); if (!finished) { @@ -1158,6 +1150,14 @@ Session::butler_transport_work (bool have_process_lock) } } + const int butler = g_atomic_int_get (&_butler_seek_counter); + const int rtlocates = g_atomic_int_get (&_seek_counter); + + if (butler != rtlocates) { + DEBUG_TRACE (DEBUG::Transport, string_compose ("nonrealtime locate invoked from BTW (butler has done %1, rtlocs %2)\n", butler, rtlocates)); + non_realtime_locate (); + } + if (ptw & PostTransportOverWrite) { non_realtime_overwrite (on_entry, finished, (ptw & PostTransportLoopChanged)); if (!finished) {