summaryrefslogtreecommitdiffstats
path: root/src/server/InputPort.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2017-03-20 02:50:00 +0100
committerDavid Robillard <d@drobilla.net>2017-03-20 03:19:33 +0100
commit8bf529bb24c03ebdce884cf9a4288812bb9b2cd5 (patch)
tree13f22cae9425a7b11d1c6c081b34e61e9cde964a /src/server/InputPort.cpp
parent2a8f4846d02de4256a0c624ff8a29867bb7da86b (diff)
downloadingen-8bf529bb24c03ebdce884cf9a4288812bb9b2cd5.tar.gz
ingen-8bf529bb24c03ebdce884cf9a4288812bb9b2cd5.tar.bz2
ingen-8bf529bb24c03ebdce884cf9a4288812bb9b2cd5.zip
Fix value buffer update
Diffstat (limited to 'src/server/InputPort.cpp')
-rw-r--r--src/server/InputPort.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/server/InputPort.cpp b/src/server/InputPort.cpp
index 6e72f6f6..fe613f31 100644
--- a/src/server/InputPort.cpp
+++ b/src/server/InputPort.cpp
@@ -217,12 +217,15 @@ SampleCount
InputPort::next_value_offset(SampleCount offset, SampleCount end) const
{
SampleCount earliest = end;
+
+ if (_user_buffer) {
+ earliest = _user_buffer->next_value_offset(offset, end);
+ }
+
for (const auto& arc : _arcs) {
- if (arc.tail()->type() != this->type()) {
- const SampleCount o = arc.tail()->next_value_offset(offset, end);
- if (o < earliest) {
- earliest = o;
- }
+ const SampleCount o = arc.tail()->next_value_offset(offset, end);
+ if (o < earliest) {
+ earliest = o;
}
}