X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fflash.c;h=3d1006c30e7515258340c74d2ec7fb62c1b26e33;hb=14581c9e70e3050a01b464407dddd6e028e94572;hp=2607f21a40cfd95ad148e7640b333ef48e95ff1f;hpb=7ddcc6604ef3a6004c8fefb59d2ecdedc440b2bc;p=swftools.git diff --git a/src/flash.c b/src/flash.c index 2607f21..3d1006c 100644 --- a/src/flash.c +++ b/src/flash.c @@ -344,7 +344,7 @@ void placeobject_write (struct PlaceObject*obj, struct writer_t*w) } writer_resetbits(w); - *(u32*)lenpos = (u8*)writer_getpos(w) - pos; + *(u32*)lenpos = SWAP32((u8*)writer_getpos(w) - pos); } void placeobject2_init (struct PlaceObject2*obj,struct swf_tag*tag) @@ -389,7 +389,7 @@ void placeobject2_write (struct PlaceObject2*obj, struct writer_t*w) { u8 flags = obj->reserved<<7 | obj->hasclipactions<<6 | obj->hasname<<5 | obj->hasratio<<4 | obj->hascolortransform<<3 | obj->hasmatrix<<2 | obj->hascharacter<<1 | obj->hasmove; - u16 taghead = 0x3f | TAGID_PLACEOBJECT2<<6; + u16 taghead = SWAP16(0x3f | TAGID_PLACEOBJECT2<<6); u8*pos; u8*lenpos; writer_resetbits(w); @@ -416,7 +416,7 @@ void placeobject2_write (struct PlaceObject2*obj, struct writer_t*w) if(obj->hasclipactions) writer_writeu16(w, obj->clipactions); writer_resetbits(w); - *(u32*)lenpos = (u8*)writer_getpos(w) - pos; + *(u32*)lenpos = SWAP32((u8*)writer_getpos(w) - pos); } void read_swf(struct swffile*swf, uchar*data, int length) @@ -514,24 +514,23 @@ int getidfromtag(struct swf_tag* tag) } break; case TAGID_REMOVEOBJECT: - return *(u16*)tag->data; + return SWAP16(*(u16*)tag->data); break; case TAGID_REMOVEOBJECT2: return -1; break; } - return *(u16*)tag->data; + return SWAP16(*(u16*)tag->data); } void setidintag(struct swf_tag* tag, int id) { - *(u16*)tag->data = id; + *(u16*)tag->data = SWAP16(id); } char is_sprite_tag (int id) { - int t=0; while(spritetagids[t]>=0) { @@ -544,7 +543,6 @@ char is_sprite_tag (int id) char is_defining_tag (int id) { - int t=0; while(definingtagids[t]>=0) {