don't display internal returns to user
[ardour.git] / libs / ardour / delivery.cc
index 77e3104bd653472cfea423488b16b0b8710ea47f..700efd8ac1eae88e52036f5e456c2e4b62431e04 100644 (file)
@@ -35,6 +35,7 @@
 #include "ardour/panner.h"
 #include "ardour/port.h"
 #include "ardour/session.h"
+#include "ardour/audioengine.h"
 
 #include "i18n.h"
 
@@ -178,9 +179,12 @@ Delivery::can_support_io_configuration (const ChanCount& in, ChanCount& out) con
        return false;
 }
 
+/** Caller must hold process lock */
 bool
 Delivery::configure_io (ChanCount in, ChanCount out)
 {
+       assert (!AudioEngine::instance()->process_lock().trylock());
+
        /* check configuration by comparison with our I/O port configuration, if appropriate.
           see ::can_support_io_configuration() for comments
        */
@@ -209,8 +213,9 @@ Delivery::configure_io (ChanCount in, ChanCount out)
                                }
                        }
                }
-       }
 
+       }
+       
        if (!Processor::configure_io (in, out)) {
                return false;
        }
@@ -436,7 +441,7 @@ Delivery::end_pan_touch (uint32_t which, bool mark, double when)
 
 
 void
-Delivery::flush_buffers (nframes_t nframes, nframes64_t time)
+Delivery::flush_buffers (nframes_t nframes, framepos_t time)
 {
        /* io_lock, not taken: function must be called from Session::process() calltree */