summaryrefslogtreecommitdiffstats
path: root/src/engine/ObjectBuffer.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-02-09 20:49:36 +0000
committerDavid Robillard <d@drobilla.net>2010-02-09 20:49:36 +0000
commit9ec88674048c4d4d82383623b38c31927340143d (patch)
treef879bdad4e5d23ded70c3c4e679cc6001a962d28 /src/engine/ObjectBuffer.cpp
parentadc6671c0a4c747c4bb30a13c51054e8a319a145 (diff)
downloadingen-9ec88674048c4d4d82383623b38c31927340143d.tar.gz
ingen-9ec88674048c4d4d82383623b38c31927340143d.tar.bz2
ingen-9ec88674048c4d4d82383623b38c31927340143d.zip
Fix port value broadcasting to work with all types.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2438 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/ObjectBuffer.cpp')
-rw-r--r--src/engine/ObjectBuffer.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/engine/ObjectBuffer.cpp b/src/engine/ObjectBuffer.cpp
index a391bb99..a4108ba1 100644
--- a/src/engine/ObjectBuffer.cpp
+++ b/src/engine/ObjectBuffer.cpp
@@ -41,7 +41,7 @@ using namespace Shared;
ObjectBuffer::ObjectBuffer(BufferFactory& factory, size_t capacity)
: Buffer(factory, PortType(PortType::VALUE), capacity)
{
- assert(capacity >= sizeof(LV2_Object));
+ capacity += sizeof(LV2_Object);
#ifdef HAVE_POSIX_MEMALIGN
const int ret = posix_memalign((void**)&_buf, 16, capacity);
@@ -88,7 +88,7 @@ ObjectBuffer::resize(size_t size)
const uint32_t contents_size = sizeof(LV2_Object) + _buf->size;
_buf = (LV2_Object*)realloc(_buf, sizeof(LV2_Object) + size);
- _size = size;
+ _size = size + sizeof(LV2_Object);
// If we shrunk and chopped the current contents, clear corrupt data
if (size < contents_size)