From 7873938d18daf4a94ca77eeb970457f89e679374 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Fri, 31 Dec 2004 04:58:29 +0000 Subject: 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 --- externals/grill/flext/source/flbuf.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'externals/grill/flext/source/flbuf.cpp') 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) { -- cgit v1.2.1