X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fswfdump.c;h=c69d28f2bc35fc4ca9ef892edb9610b26e4dcc35;hb=9d1556507170bc827fca8ebbaa27862c978c6c33;hp=294a3f24d836b2a2eab843fee267346451dcc10d;hpb=38c19185b95fb1c520088809254ab915db31ff5c;p=swftools.git diff --git a/src/swfdump.c b/src/swfdump.c index 294a3f2..c69d28f 100644 --- a/src/swfdump.c +++ b/src/swfdump.c @@ -463,11 +463,13 @@ void handleVideoFrame(TAG*tag, char*prefix) void handlePlaceObject2(TAG*tag, char*prefix) { - U8 flags = swf_GetU8(tag); + U8 flags; MATRIX m; CXFORM cx; char pstr[3][160]; int ppos[3] = {0,0,0}; + swf_SetTagPos(tag, 0); + flags = swf_GetU8(tag); swf_GetU16(tag); //depth //flags&1: move @@ -558,16 +560,19 @@ void handlePlaceObject2(TAG*tag, char*prefix) void handlePlaceObject(TAG*tag, char*prefix) { TAG*tag2 = swf_InsertTag(0, ST_PLACEOBJECT2); - - U16 id = swf_GetU16(tag); - U16 depth = swf_GetU16(tag); + U16 id, depth; MATRIX matrix; CXFORM cxform; + + swf_SetTagPos(tag, 0); + id = swf_GetU16(tag); + depth = swf_GetU16(tag); swf_GetMatrix(tag, &matrix); swf_GetCXForm(tag, &cxform, 0); - swf_SetU8(tag2, 14); + swf_SetU8(tag2, 14 /* char, matrix, cxform */); swf_SetU16(tag2, depth); + swf_SetU16(tag2, id); swf_SetMatrix(tag2, &matrix); swf_SetCXForm(tag2, &cxform, 1); @@ -934,7 +939,8 @@ int main (int argc,char ** argv) printf(" object"); printf(" at depth %04d", swf_GetDepth(tag)); - + + swf_SetTagPos(tag, 0); if(tag->data[0]&64) { SWFPLACEOBJECT po; swf_GetPlaceObject(tag, &po);