summaryrefslogtreecommitdiff
path: root/libs/ardour/ladspa_plugin.cc
diff options
context:
space:
mode:
authorSampo Savolainen <v2@iki.fi>2006-02-11 14:45:27 +0000
committerSampo Savolainen <v2@iki.fi>2006-02-11 14:45:27 +0000
commitaa554c5d7356eb0ddc4a28abd3e40dec8988bfd3 (patch)
tree0ba1da7283e95691e5f92d9360956f9a4a491086 /libs/ardour/ladspa_plugin.cc
parentcf0da62ff0e4ef7dfcf0730f1af057edd34dc15a (diff)
Fixed buffer index overrun in connect_and_run()
git-svn-id: svn://localhost/trunk/ardour2@318 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ladspa_plugin.cc')
-rw-r--r--libs/ardour/ladspa_plugin.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/ardour/ladspa_plugin.cc b/libs/ardour/ladspa_plugin.cc
index 1262b7e250..50757f9acd 100644
--- a/libs/ardour/ladspa_plugin.cc
+++ b/libs/ardour/ladspa_plugin.cc
@@ -609,14 +609,14 @@ LadspaPlugin::connect_and_run (vector<Sample*>& bufs, uint32_t nbufs, int32_t& i
while (port_index < parameter_count()) {
if (LADSPA_IS_PORT_AUDIO (port_descriptor(port_index))) {
if (LADSPA_IS_PORT_INPUT (port_descriptor(port_index))) {
- connect_port (port_index, bufs[min((uint32_t) in_index,nbufs)] + offset);
+ connect_port (port_index, bufs[min((uint32_t) in_index,nbufs - 1)] + offset);
//cerr << this << ' ' << name() << " @ " << offset << " inport " << in_index << " = buf "
// << min((uint32_t)in_index,nbufs) << " = " << &bufs[min((uint32_t)in_index,nbufs)][offset] << endl;
in_index++;
} else if (LADSPA_IS_PORT_OUTPUT (port_descriptor (port_index))) {
- connect_port (port_index, bufs[min((uint32_t) out_index,nbufs)] + offset);
+ connect_port (port_index, bufs[min((uint32_t) out_index,nbufs - 1)] + offset);
// cerr << this << ' ' << name() << " @ " << offset << " outport " << out_index << " = buf "
// << min((uint32_t)out_index,nbufs) << " = " << &bufs[min((uint32_t)out_index,nbufs)][offset] << endl;
out_index++;