summaryrefslogtreecommitdiff
path: root/libs/ardour/buffer_set.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-11-18 17:58:38 +0000
committerCarl Hetherington <carl@carlh.net>2009-11-18 17:58:38 +0000
commit477bc772beaf1214e309edd4fb748621c07e2e7b (patch)
tree330911dc9f280f62ba65a57ab554ef7db05b6c3d /libs/ardour/buffer_set.cc
parent753c66a78666e031dc859c6c2168e14e369263a4 (diff)
Make BufferSet::is_silent work so that session silent_buffers are correctly silenced, preventing feedback from occurring with plugins that output non-zero values for zero inputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6124 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/buffer_set.cc')
-rw-r--r--libs/ardour/buffer_set.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/ardour/buffer_set.cc b/libs/ardour/buffer_set.cc
index c77db6a683..70f75985f7 100644
--- a/libs/ardour/buffer_set.cc
+++ b/libs/ardour/buffer_set.cc
@@ -335,5 +335,16 @@ BufferSet::silence (nframes_t nframes, nframes_t offset)
}
}
+void
+BufferSet::is_silent (bool yn)
+{
+ for (std::vector<BufferVec>::iterator i = _buffers.begin(); i != _buffers.end(); ++i) {
+ for (BufferVec::iterator b = i->begin(); b != i->end(); ++b) {
+ (*b)->is_silent (yn);
+ }
+ }
+
+}
+
} // namespace ARDOUR