diff options
Diffstat (limited to 'libs/ardour/internal_return.cc')
-rw-r--r-- | libs/ardour/internal_return.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/ardour/internal_return.cc b/libs/ardour/internal_return.cc index 19f677f368..3c75c7957d 100644 --- a/libs/ardour/internal_return.cc +++ b/libs/ardour/internal_return.cc @@ -57,14 +57,18 @@ InternalReturn::run (BufferSet& bufs, framepos_t /*start_frame*/, framepos_t /*e void InternalReturn::add_send (InternalSend* send) { - Glib::Mutex::Lock lm (_session.engine().process_lock()); + /* caller must hold process lock */ + assert (!AudioEngine::instance()->process_lock().trylock()); + _sends.push_back (send); } void InternalReturn::remove_send (InternalSend* send) { - Glib::Mutex::Lock lm (_session.engine().process_lock()); + /* caller must hold process lock */ + assert (!AudioEngine::instance()->process_lock().trylock()); + _sends.remove (send); } |