diff options
author | Thomas Grill <xovo@users.sourceforge.net> | 2005-12-12 00:18:21 +0000 |
---|---|---|
committer | Thomas Grill <xovo@users.sourceforge.net> | 2005-12-12 00:18:21 +0000 |
commit | d1297bad7d860014ff6a4aa3ce66002125c7d0ac (patch) | |
tree | 5e79ae7505fc8d41f950b4a93ca2c2577bf2f691 /externals/grill/flext/source/flext.cpp | |
parent | fdca1f5103adda0421002ef21370b434ed4c8202 (diff) |
new flext::CopyAtoms function
fixed dangerous spot (also memory leak) with message queuing
flext::Forward has more incarnations now
fixed and cleaned up library related stuff, especially co-existance of Max message and DSP library objects
some minor changes after valgrind run
more pthreads V2 fixes
added message bundles (flext::MsgBundle)
save some space saving inlet pointers
fix uninitialized pointer
update docs
svn path=/trunk/; revision=4189
Diffstat (limited to 'externals/grill/flext/source/flext.cpp')
-rw-r--r-- | externals/grill/flext/source/flext.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/externals/grill/flext/source/flext.cpp b/externals/grill/flext/source/flext.cpp index f332ce65..df0f0b61 100644 --- a/externals/grill/flext/source/flext.cpp +++ b/externals/grill/flext/source/flext.cpp @@ -20,7 +20,6 @@ WARRANTIES, see the file, "license.txt," in this distribution. // === flext_base ============================================ bool flext_base::compatibility = true; -bool flext_base::indsp = false; const t_symbol *flext_base::curtag = NULL; flext_base::FLEXT_CLASSDEF(flext_base)() @@ -113,13 +112,14 @@ void flext_base::Exit() if(outlets) delete[] outlets; if(inlets) { - for(int ix = 0; ix < incnt; ++ix) - if(inlets[ix]) { + FLEXT_ASSERT(incnt > 1); + for(int ix = 1; ix < incnt; ++ix) + if(inlets[ix-1]) { // release proxy object #if FLEXT_SYS == FLEXT_SYS_PD - pd_free(&inlets[ix]->obj.ob_pd); + pd_free(&inlets[ix-1]->obj.ob_pd); #elif FLEXT_SYS == FLEXT_SYS_MAX - freeobject((object *)inlets[ix]); + freeobject((object *)inlets[ix-1]); #endif } delete[] inlets; |