diff options
Diffstat (limited to 'libs/ardour/port_insert.cc')
-rw-r--r-- | libs/ardour/port_insert.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libs/ardour/port_insert.cc b/libs/ardour/port_insert.cc index ffddc681c7..a46f7a7da3 100644 --- a/libs/ardour/port_insert.cc +++ b/libs/ardour/port_insert.cc @@ -72,14 +72,17 @@ PortInsert::run (BufferSet& bufs, sframes_t start_frame, sframes_t end_frame, nf return; } - if (!active()) { + if (!_active && !_pending_active) { /* deliver silence */ silence (nframes); - return; + goto out; } _out->run (bufs, start_frame, end_frame, nframes); _input->collect_input (bufs, nframes, ChanCount::ZERO); + + out: + _active = _pending_active; } XMLNode& |