summaryrefslogtreecommitdiffstats
path: root/src/engine/PortImpl.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-12-20 20:28:04 +0000
committerDavid Robillard <d@drobilla.net>2008-12-20 20:28:04 +0000
commit76f6fcfad68d88728bb1a04b193029aa9e46e976 (patch)
tree271ca830393f9b6dc5241b1ff152905902aaeced /src/engine/PortImpl.cpp
parent72c6d069df26396436c653532702a4f96f901fba (diff)
downloadingen-76f6fcfad68d88728bb1a04b193029aa9e46e976.tar.gz
ingen-76f6fcfad68d88728bb1a04b193029aa9e46e976.tar.bz2
ingen-76f6fcfad68d88728bb1a04b193029aa9e46e976.zip
Fix deregistration of Jack ports, associated memory leaks. Hopefully a fix for #294 and #305).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1877 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/PortImpl.cpp')
-rw-r--r--src/engine/PortImpl.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/engine/PortImpl.cpp b/src/engine/PortImpl.cpp
index 1e137b75..26fe07d0 100644
--- a/src/engine/PortImpl.cpp
+++ b/src/engine/PortImpl.cpp
@@ -72,8 +72,9 @@ PortImpl::PortImpl(NodeImpl* const node,
PortImpl::~PortImpl()
{
- for (uint32_t i=0; i < _poly; ++i)
- delete _buffers->at(i);
+ if (!_fixed_buffers)
+ for (uint32_t i=0; i < _poly; ++i)
+ delete _buffers->at(i);
delete _buffers;
}