diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index afd26d0373..b2364054fa 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -1221,11 +1221,13 @@ Session::butler_transport_work () void Session::non_realtime_overwrite (int on_entry, bool& finished) { - boost::shared_ptr rl = routes.reader(); + RouteList rl (*(routes.reader ())); + if (is_auditioning ()) { - rl->push_back (auditioner); + rl.push_back (auditioner); } - for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) { + + for (RouteList::iterator i = rl.begin(); i != rl.end(); ++i) { boost::shared_ptr tr = boost::dynamic_pointer_cast (*i); if (tr && tr->pending_overwrite ()) { tr->overwrite_existing_buffers ();