git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
initialize globalParams. Otherwise, xpdf segfaults.
[swftools.git]
/
src
/
combine.c
diff --git
a/src/combine.c
b/src/combine.c
index
1e391aa
..
9a033cb
100644
(file)
--- a/
src/combine.c
+++ b/
src/combine.c
@@
-58,17
+58,13
@@
void changedepth(struct swf_tag*tag, int add)
{
/* fucking big endian byte order */
if(tag->id == TAGID_PLACEOBJECT)
{
/* fucking big endian byte order */
if(tag->id == TAGID_PLACEOBJECT)
- (*(u16*)&tag->data[2]) =
- SWAP16(SWAP16(*(u16*)&tag->data[2]) + add);
+ PUT16(&tag->data[2],GET16(&tag->data[2])+add);
if(tag->id == TAGID_PLACEOBJECT2)
if(tag->id == TAGID_PLACEOBJECT2)
- (*(u16*)&tag->data[1]) =
- SWAP16(SWAP16(*(u16*)&tag->data[1]) + add);
+ PUT16(&tag->data[1],GET16(&tag->data[1])+add);
if(tag->id == TAGID_REMOVEOBJECT)
if(tag->id == TAGID_REMOVEOBJECT)
- (*(u16*)&tag->data[2]) =
- SWAP16(SWAP16(*(u16*)&tag->data[2]) + add);
+ PUT16(&tag->data[2],GET16(&tag->data[2])+add);
if(tag->id == TAGID_REMOVEOBJECT2)
if(tag->id == TAGID_REMOVEOBJECT2)
- (*(u16*)&tag->data[0]) =
- SWAP16(SWAP16(*(u16*)&tag->data[0]) + add);
+ PUT16(&tag->data[0],GET16(&tag->data[0])+add);
}
void jpeg_assert()
}
void jpeg_assert()
@@
-88,7
+84,7
@@
void jpeg_assert()
pos++;
}
pos = 0;
pos++;
}
pos = 0;
- while(master.tags[pos].id != 0)
+ while(slave.tags[pos].id != 0)
{
if(slave.tags[pos].id == TAGID_JPEGTABLES)
spos = pos;
{
if(slave.tags[pos].id == TAGID_JPEGTABLES)
spos = pos;
@@
-253,9
+249,9
@@
void write_sprite(struct writer_t*w, int spriteid, int replaceddefine)
startpos = (u8*)writer_getpos(w);
logf ("<notice> sprite id is %d", spriteid);
startpos = (u8*)writer_getpos(w);
logf ("<notice> sprite id is %d", spriteid);
- tmp = spriteid;
+ tmp = SWAP16(spriteid);
writer_write(w, &tmp, 2);
writer_write(w, &tmp, 2);
- tmp = slave.header.count;
+ tmp = SWAP16(slave.header.count);
writer_write(w, &tmp, 2);
writer_write(w, &tmp, 2);
@@
-305,8
+301,8
@@
void write_sprite(struct writer_t*w, int spriteid, int replaceddefine)
}
while(slave.tags[pos++].id != TAGID_END);
}
while(slave.tags[pos++].id != TAGID_END);
- *tagidpos = SWAP32((u8*)writer_getpos(w) - startpos); // set length of sprite (in header)
- logf("<verbose> sprite length is %d",SWAP32(*tagidpos));
+ PUT32(tagidpos, (u8*)writer_getpos(w) - startpos); // set length of sprite (in header)
+ logf("<verbose> sprite length is %d",GET32(tagidpos));
}
static char tag_ok_for_slave(int id)
}
static char tag_ok_for_slave(int id)
@@
-353,7
+349,7
@@
void write_master(struct writer_t*w, int spriteid, int replaceddefine, int flags
{
if(config.overlay)
{
{
if(config.overlay)
{
- *(u16*)master.tags[pos].data = SWAP16(replaceddefine);
+ PUT16(master.tags[pos].data, replaceddefine);
writer_write(w, master.tags[pos].fulldata, master.tags[pos].fulllength);
} else {
/* don't write this tag */
writer_write(w, master.tags[pos].fulldata, master.tags[pos].fulllength);
} else {
/* don't write this tag */
@@
-388,10
+384,10
@@
void write_master(struct writer_t*w, int spriteid, int replaceddefine, int flags
if(config.clip) {
logf("<fatal> Can't combine --clip and --frame");
}
if(config.clip) {
logf("<fatal> Can't combine --clip and --frame");
}
- *(u16*)&data[0] = SWAP16((u16)(TAGID_PLACEOBJECT2<<6) + 5);
+ PUT16(&data[0], (u16)(TAGID_PLACEOBJECT2<<6) + 5);
*(u8*)&data[2]= 2; //flags: id
*(u8*)&data[2]= 2; //flags: id
- *(u16*)&data[3]= SWAP16(depth); // depth
- *(u16*)&data[5]= SWAP16(id);
+ PUT16(&data[3], depth);
+ PUT16(&data[5], id);
write_sprite_defines(w);
write_sprite(w, id, -1);
writer_write(w,data,7);
write_sprite_defines(w);
write_sprite(w, id, -1);
writer_write(w,data,7);
@@
-554,8
+550,8
@@
uchar * catcombine(uchar*masterdata, int masterlength, char*_slavename, uchar*sl
{
char data[16];
int len;
{
char data[16];
int len;
- *(u16*)(&data[0]) = SWAP16((TAGID_REMOVEOBJECT2<<6) + 2);
- *(u16*)(&data[2]) = SWAP16(t);
+ PUT16(&data[0], (TAGID_REMOVEOBJECT2<<6) + 2);
+ PUT16(&data[2], t);
writer_write(&w, data, 4);
}
free(depths);
writer_write(&w, data, 4);
}
free(depths);
@@
-570,7
+566,7
@@
uchar * catcombine(uchar*masterdata, int masterlength, char*_slavename, uchar*sl
tmp32 = (u8*)writer_getpos(&w) - (u8*)newdata; //length
*newlength = tmp32;
tmp32 = (u8*)writer_getpos(&w) - (u8*)newdata; //length
*newlength = tmp32;
- *headlength = SWAP32(tmp32); // set the header to the correct length
+ PUT32(headlength, tmp32); // set the header to the correct length
return newdata; //length
}
return newdata; //length
}
@@
-585,7
+581,7
@@
uchar * normalcombine(uchar*masterdata, int masterlength, char*_slavename, uchar
int spriteid = -1;
int replaceddefine = -1;
struct writer_t w;
int spriteid = -1;
int replaceddefine = -1;
struct writer_t w;
- int frame;
+ int frame = 0;
char*framelabel;
length = masterlength + slavelength*2 + 128; // this is a guess, but a good guess.
char*framelabel;
length = masterlength + slavelength*2 + 128; // this is a guess, but a good guess.
@@
-678,7
+674,7
@@
uchar * normalcombine(uchar*masterdata, int masterlength, char*_slavename, uchar
tmp32 = (u8*)writer_getpos(&w) - (u8*)newdata; //length
*newlength = tmp32;
tmp32 = (u8*)writer_getpos(&w) - (u8*)newdata; //length
*newlength = tmp32;
- *headlength = SWAP32(tmp32); // set the header to the correct length
+ PUT32(headlength, tmp32);
return newdata; //length
}
return newdata; //length
}
@@
-705,8
+701,8
@@
uchar * combine(uchar*masterdata, int masterlength, char*_slavename, uchar*slave
logf("<debug> move x (%d)", config.movex);
logf("<debug> move y (%d)", config.movey);
logf("<debug> move x (%d)", config.movex);
logf("<debug> move y (%d)", config.movey);
- logf("<debug> scale x (%d)", config.scalex);
- logf("<debug> scale y (%d)", config.scaley);
+ logf("<debug> scale x (%f)", config.scalex);
+ logf("<debug> scale y (%f)", config.scaley);
logf("<debug> is frame (%d)", config.isframe);
memset(masterids, -1, sizeof(masterids));
logf("<debug> is frame (%d)", config.isframe);
memset(masterids, -1, sizeof(masterids));