From 96c22c9cdff5abb50d3653d352acfbbf345b96d2 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 13 Aug 2008 22:19:24 +0000 Subject: Fix crash on triggers on the last sample of the cycle. git-svn-id: http://svn.drobilla.net/lad/ingen@1356 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/AudioBuffer.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/libs/engine') diff --git a/src/libs/engine/AudioBuffer.cpp b/src/libs/engine/AudioBuffer.cpp index 5eea7103..098103c0 100644 --- a/src/libs/engine/AudioBuffer.cpp +++ b/src/libs/engine/AudioBuffer.cpp @@ -135,10 +135,12 @@ AudioBuffer::set_value(Sample val, FrameTime cycle_start, FrameTime time) FrameTime offset = time - cycle_start; assert(offset <= _size); - set_block(val, offset, _size - 1); - - if (offset > 0) - _state = HALF_SET_CYCLE_1; + if (offset < _size) { + set_block(val, offset, _size - 1); + + if (offset > 0) + _state = HALF_SET_CYCLE_1; + } // else trigger at very end of block _set_time = time; _set_value = val; -- cgit v1.2.1