git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
classinfo_register now allocates space for the interface list
[swftools.git]
/
lib
/
as3
/
registry.c
diff --git
a/lib/as3/registry.c
b/lib/as3/registry.c
index
e8206a7
..
2263038
100644
(file)
--- a/
lib/as3/registry.c
+++ b/
lib/as3/registry.c
@@
-81,9
+81,10
@@
type_t memberinfo_type = {
// ------------------------- constructors --------------------------------
#define AVERAGE_NUMBER_OF_MEMBERS 8
// ------------------------- constructors --------------------------------
#define AVERAGE_NUMBER_OF_MEMBERS 8
-classinfo_t* classinfo_register(int access, char*package, char*name)
+classinfo_t* classinfo_register(int access, char*package, char*name, int num_interfaces)
{
{
- NEW(classinfo_t,c);
+ classinfo_t*c = rfx_calloc(sizeof(classinfo_t)+(sizeof(classinfo_t*)*(num_interfaces+1)));
+ c->interfaces[0] = 0;
c->access = access;
c->package = package;
c->name = name;
c->access = access;
c->package = package;
c->name = name;
@@
-108,7
+109,7
@@
classinfo_t* registry_getfunctionclass(memberinfo_t*f) {
c->package = "";
c->name = "Function";
dict_init(&c->members,1);
c->package = "";
c->name = "Function";
dict_init(&c->members,1);
- dict_put(&c->members, "__funcptr__", f);
+ dict_put(&c->members, "call", f);
dict_put(functionobjects, f, c);
return c;
dict_put(functionobjects, f, c);
return c;