diff options
Diffstat (limited to 'src/server/InputPort.cpp')
-rw-r--r-- | src/server/InputPort.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/server/InputPort.cpp b/src/server/InputPort.cpp index f2aacea1..abaf5b62 100644 --- a/src/server/InputPort.cpp +++ b/src/server/InputPort.cpp @@ -148,14 +148,13 @@ InputPort::pre_process(Context& context) for (uint32_t v = 0; v < _poly; ++v) { buffer(v)->update_value_buffer(context.offset()); } - return; - } - - if (_arcs.empty()) { + } else if (_arcs.empty()) { + // No incoming arcs, just update set state for (uint32_t v = 0; v < _poly; ++v) { update_set_state(context, v); } } else if (direct_connect()) { + // Directly connected, use source's buffer directly for (uint32_t v = 0; v < _poly; ++v) { _voices->at(v).buffer = _arcs.front().buffer(v); } |