summaryrefslogtreecommitdiffstats
path: root/src/server/LV2Block.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-12-17 04:57:59 +0000
committerDavid Robillard <d@drobilla.net>2013-12-17 04:57:59 +0000
commit73f6522b1c60286d35aa64739664273119fb6eb3 (patch)
tree9304f13ed176c41695c2c822144c906ee29b7260 /src/server/LV2Block.cpp
parentcac1263b0bec8a368b28c0a47e4bbb18f1aae958 (diff)
downloadingen-73f6522b1c60286d35aa64739664273119fb6eb3.tar.gz
ingen-73f6522b1c60286d35aa64739664273119fb6eb3.tar.bz2
ingen-73f6522b1c60286d35aa64739664273119fb6eb3.zip
Fix atom vector communication (patch from Robin Gareus, #941).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5175 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/LV2Block.cpp')
-rw-r--r--src/server/LV2Block.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/server/LV2Block.cpp b/src/server/LV2Block.cpp
index 73a74daa..7b1dc3f3 100644
--- a/src/server/LV2Block.cpp
+++ b/src/server/LV2Block.cpp
@@ -219,6 +219,7 @@ LV2Block::instantiate(BufferFactory& bufs)
float* max_values = new float[num_ports];
float* def_values = new float[num_ports];
lilv_plugin_get_port_ranges_float(plug, min_values, max_values, def_values);
+ uint32_t max_sequence_size = 0;
// Get all the necessary information about ports
for (uint32_t j = 0; j < num_ports; ++j) {
@@ -322,6 +323,8 @@ LV2Block::instantiate(BufferFactory& bufs)
}
}
lilv_nodes_free(sizes);
+ max_sequence_size = std::max(port_buffer_size, max_sequence_size);
+ bufs.set_seq_size(max_sequence_size);
}
enum { UNKNOWN, INPUT, OUTPUT } direction = UNKNOWN;