aboutsummaryrefslogtreecommitdiff
path: root/externals
diff options
context:
space:
mode:
Diffstat (limited to 'externals')
-rw-r--r--externals/grill/flext/flext.mcpbin935395 -> 935395 bytes
-rwxr-xr-xexternals/grill/flext/source/fllib.cpp12
-rw-r--r--externals/grill/flext/source/flmap.h2
3 files changed, 8 insertions, 6 deletions
diff --git a/externals/grill/flext/flext.mcp b/externals/grill/flext/flext.mcp
index 8455ff79..128c06db 100644
--- a/externals/grill/flext/flext.mcp
+++ b/externals/grill/flext/flext.mcp
Binary files differ
diff --git a/externals/grill/flext/source/fllib.cpp b/externals/grill/flext/source/fllib.cpp
index b28bda5a..b41a744e 100755
--- a/externals/grill/flext/source/fllib.cpp
+++ b/externals/grill/flext/source/fllib.cpp
@@ -18,6 +18,7 @@ WARRANTIES, see the file, "license.txt," in this distribution.
#include <stdarg.h>
#include <string.h>
#include <ctype.h>
+#include <map>
#define ALIASDEL ','
@@ -127,16 +128,17 @@ flext_class::flext_class(t_class *&cl,flext_obj *(*newf)(int,t_atom *),void (*fr
, dist(false)
{}
-
typedef TablePtrMap<const t_symbol *,flext_class *,8> LibMap;
-
-static LibMap libnames;
+// static initialization (with constructor) doesn't work for Codewarrior
+static LibMap *libnames = NULL;
//! Store or retrieve registered classes
static flext_class *FindName(const t_symbol *s,flext_class *o = NULL)
{
- flext_class *cl = libnames.find(s);
- if(!cl) libnames.insert(s,cl = o);
+ if(!libnames) libnames = new LibMap;
+ flext_class *cl = libnames->find(s);
+ if(!cl && o)
+ libnames->insert(s,cl = o);
return cl;
}
diff --git a/externals/grill/flext/source/flmap.h b/externals/grill/flext/source/flmap.h
index 601f1df7..69204e2e 100644
--- a/externals/grill/flext/source/flmap.h
+++ b/externals/grill/flext/source/flmap.h
@@ -144,7 +144,7 @@ public:
void _check(int tsize);
#endif
- Data *const data;
+ Data *data;
TableAnyMap *parent,*left,*right;
int n;