diff options
author | Thomas Grill <xovo@users.sourceforge.net> | 2004-12-31 04:58:29 +0000 |
---|---|---|
committer | Thomas Grill <xovo@users.sourceforge.net> | 2004-12-31 04:58:29 +0000 |
commit | 7873938d18daf4a94ca77eeb970457f89e679374 (patch) | |
tree | 8de0488af4f068ad7aa37f1ffc08482e04efb258 /externals/grill/flext/source/flbuf.cpp | |
parent | 889c04fdf4fa9239c7442ed3b381ad5d004782f1 (diff) |
fix for showing attributes on select (and recreate the object on edit)
reconsidered flext::buffer:Update
build system for flext-based externals
added object construction and destruction flags
svn path=/trunk/; revision=2438
Diffstat (limited to 'externals/grill/flext/source/flbuf.cpp')
-rw-r--r-- | externals/grill/flext/source/flbuf.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/externals/grill/flext/source/flbuf.cpp b/externals/grill/flext/source/flbuf.cpp index 4dc0b6e8..649e1b8d 100644 --- a/externals/grill/flext/source/flbuf.cpp +++ b/externals/grill/flext/source/flbuf.cpp @@ -81,7 +81,7 @@ int flext::buffer::Set(const t_symbol *s,bool nameonly) if(!arr) { if (*GetString(sym)) FLEXT_LOG1("buffer: no such array '%s'",GetString(sym)); - sym = NULL; +// sym = NULL; if(valid) ret = -1; } else if(!garray_getfloatarray(arr, &frames1, &data1)) @@ -147,11 +147,13 @@ bool flext::buffer::Valid() const bool flext::buffer::Update() { - if(!Ok()) return false; +// if(!Ok()) return false; bool ok = false; #if FLEXT_SYS == FLEXT_SYS_PD + if(!sym || !arr) return data == NULL; + int frames1; t_sample *data1; if(!garray_getfloatarray(arr, &frames1, &data1)) { @@ -166,6 +168,8 @@ bool flext::buffer::Update() ok = true; } #elif FLEXT_SYS == FLEXT_SYS_MAX + if(!sym) return data == NULL; + if(sym->s_thing) { const _buffer *p = (const _buffer *)sym->s_thing; if(data != p->b_samples || chns != p->b_nchans || frames != p->b_frames) { |