summaryrefslogtreecommitdiffstats
path: root/src/engine/EventBuffer.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-11-22 06:54:01 +0000
committerDavid Robillard <d@drobilla.net>2008-11-22 06:54:01 +0000
commitfc397802d408441ce354c5b0328adc93f617aca5 (patch)
tree20c5e837ce7153d4989e4a290527d131353b727a /src/engine/EventBuffer.cpp
parent91575b926a29fab3d8cfab439b99198be032a45f (diff)
downloadingen-fc397802d408441ce354c5b0328adc93f617aca5.tar.gz
ingen-fc397802d408441ce354c5b0328adc93f617aca5.tar.bz2
ingen-fc397802d408441ce354c5b0328adc93f617aca5.zip
Fix event loss for outputs connected directly to several inputs (fix ticket #231).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1763 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/EventBuffer.cpp')
-rw-r--r--src/engine/EventBuffer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/engine/EventBuffer.cpp b/src/engine/EventBuffer.cpp
index 4d499496..98a98a20 100644
--- a/src/engine/EventBuffer.cpp
+++ b/src/engine/EventBuffer.cpp
@@ -100,6 +100,7 @@ EventBuffer::join(Buffer* buf)
void
EventBuffer::unjoin()
{
+ //cout << this << " unjoin" << endl;
_joined_buf = NULL;
_buf = _local_buf;
reset(_this_nframes);
@@ -109,7 +110,6 @@ EventBuffer::unjoin()
void
EventBuffer::prepare_read(FrameTime start, SampleCount nframes)
{
- //cerr << "\t" << this << " prepare_read: " << event_count() << endl;
rewind();
_this_nframes = nframes;
}
@@ -134,6 +134,7 @@ EventBuffer::copy(const Buffer* src_buf, size_t start_sample, size_t end_sample)
src->rewind();
memcpy(_buf, src->_buf, src->_buf->size);
+ _this_nframes = end_sample - start_sample;
}