From 91d3e8ead0fc19cfec6b157a56b8bb391d3be44d Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 5 Dec 2014 14:49:21 -0500 Subject: [PATCH] if a Route's processor lock cannot be taken, fill buffers with silence (causing click) rather than abort() --- libs/ardour/route.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index e6ab6fb6fc..a93a6a1bf8 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -433,7 +433,10 @@ Route::process_output_buffers (BufferSet& bufs, assert (!AudioEngine::instance()->process_lock().trylock()); Glib::Threads::RWLock::ReaderLock lm (_processor_lock, Glib::Threads::TRY_LOCK); - assert(lm.locked()); + if (!lm.locked()) { + bufs.silence (nframes, 0); + return; + } /* figure out if we're going to use gain automation */ if (gain_automation_ok) {