X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswftools.c;h=313d0820bd0092d3d6e0fa5fc2662a0f45b9bf99;hb=940618aea0662b2b2433638c6cdb515c508148db;hp=01a660b168cb686b0759b211924f1435f9d1c298;hpb=9187c194c978d9c9790452120a4c94d24a1bfb9e;p=swftools.git diff --git a/lib/modules/swftools.c b/lib/modules/swftools.c index 01a660b..313d082 100644 --- a/lib/modules/swftools.c +++ b/lib/modules/swftools.c @@ -118,6 +118,7 @@ U16 swf_GetDefineID(TAG * t) case ST_DEFINEFONTINFO: //pseudodefine case ST_DEFINEFONTINFO2: //pseudodefine case ST_DEFINEFONTALIGNZONES: //pseudodefine + case ST_DEFINEFONTNAME: //pseudodefine case ST_DEFINETEXT: case ST_DEFINETEXT2: case ST_DEFINESOUND: @@ -241,6 +242,7 @@ static int swf_definingtagids[] = ST_DEFINEBUTTON2, ST_DEFINESOUND, ST_DEFINEVIDEOSTREAM, + ST_DEFINEBINARY, -1 }; @@ -253,6 +255,7 @@ static int swf_spritetagids[] = ST_REMOVEOBJECT, ST_REMOVEOBJECT2, ST_DOACTION, + ST_DOABC, ST_STARTSOUND, ST_FRAMELABEL, ST_SOUNDSTREAMHEAD, @@ -268,6 +271,7 @@ static int swf_pseudodefiningtagids[] = ST_DEFINEFONTINFO, ST_DEFINEFONTINFO2, ST_DEFINEFONTALIGNZONES, + ST_DEFINEFONTNAME, ST_DEFINEBUTTONCXFORM, ST_DEFINEBUTTONSOUND, ST_DEFINESCALINGGRID, @@ -604,6 +608,8 @@ void enumerateUsedIDs(TAG * tag, int base, void (*callback)(TAG*, int, void*), v case ST_FREECHARACTER: /* unusual tags, which all start with an ID */ case ST_NAMECHARACTER: + case ST_DEFINEBINARY: + case ST_DEFINEFONTNAME: case ST_GENERATORTEXT: callback(tag, tag->pos + base, callback_data); break; @@ -962,10 +968,10 @@ void swf_Relocate (SWF*swf, char*bitmap) if(slaveids[id]<0) { fprintf(stderr, "swf_Relocate: Mapping id (%d) never encountered before in %s\n", id, swf_TagGetName(tag)); - return ; + } else { + id = slaveids[id]; + PUT16(&tag->data[ptr[t]], id); } - id = slaveids[id]; - PUT16(&tag->data[ptr[t]], id); } } tag=tag->next;