X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswftools.c;h=f7638972fcedc9d9f5048a31009127e1aa563e23;hb=30b68dc4d9d219f77e73bbd1db59dd41fd27d1eb;hp=fd27d1bd39479e7870b7dede969f370aeb2779d2;hpb=beab98e56692ca487be8b8073b9b64ec5774df7e;p=swftools.git diff --git a/lib/modules/swftools.c b/lib/modules/swftools.c index fd27d1b..f763897 100644 --- a/lib/modules/swftools.c +++ b/lib/modules/swftools.c @@ -155,6 +155,7 @@ SRECT swf_GetDefineBBox(TAG * t) { case ST_DEFINESHAPE: case ST_DEFINESHAPE2: case ST_DEFINESHAPE3: + case ST_DEFINESHAPE4: case ST_DEFINEEDITTEXT: case ST_DEFINETEXT: case ST_DEFINETEXT2: @@ -240,6 +241,7 @@ static int swf_definingtagids[] = ST_DEFINEBUTTON2, ST_DEFINESOUND, ST_DEFINEVIDEOSTREAM, + ST_DEFINEBINARY, -1 }; @@ -252,6 +254,7 @@ static int swf_spritetagids[] = ST_REMOVEOBJECT, ST_REMOVEOBJECT2, ST_DOACTION, + ST_DOABC, ST_STARTSOUND, ST_FRAMELABEL, ST_SOUNDSTREAMHEAD, @@ -603,6 +606,7 @@ 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_GENERATORTEXT: callback(tag, tag->pos + base, callback_data); break; @@ -961,10 +965,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;