amend d9de72215 - bypass replicated instances w/sidechain inputs
authorRobin Gareus <robin@gareus.org>
Tue, 5 Jul 2016 13:37:59 +0000 (15:37 +0200)
committerRobin Gareus <robin@gareus.org>
Tue, 5 Jul 2016 13:37:59 +0000 (15:37 +0200)
libs/ardour/plugin_insert.cc

index 8c1fe8bac630101107c229a9049f4acb6cf06ee5..0de2d7fe5a8dc0b1af4b0048615623883f8b62d9 100644 (file)
@@ -1264,8 +1264,11 @@ PluginInsert::no_sc_input_map () const
                ChanMapping m (i->second);
                const ChanMapping::Mappings& mp ((*i).second.mappings());
                for (ChanMapping::Mappings::const_iterator tm = mp.begin(); tm != mp.end(); ++tm) {
+                       uint32_t ins = natural_input_streams().get(tm->first) - _cached_sidechain_pins.get(tm->first);
                        for (ChanMapping::TypeMapping::const_iterator i = tm->second.begin(); i != tm->second.end(); ++i) {
-                               rv.set (tm->first, i->first + pc * (natural_input_streams().get(tm->first) - _cached_sidechain_pins.get(tm->first)), i->second);
+                               if (i->second < ins) {
+                                       rv.set (tm->first, i->first + pc * ins, i->second);
+                               }
                        }
                }
        }