git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Outputed swf was corrupt on Windows
[swftools.git]
/
src
/
swfdump.c
diff --git
a/src/swfdump.c
b/src/swfdump.c
index
e434ceb
..
be2a3dd
100644
(file)
--- a/
src/swfdump.c
+++ b/
src/swfdump.c
@@
-561,12
+561,12
@@
void handlePlaceObject(TAG*tag, char*prefix)
{
TAG*tag2 = swf_InsertTag(0, ST_PLACEOBJECT2);
U16 id, depth;
{
TAG*tag2 = swf_InsertTag(0, ST_PLACEOBJECT2);
U16 id, depth;
+ MATRIX matrix;
+ CXFORM cxform;
swf_SetTagPos(tag, 0);
id = swf_GetU16(tag);
depth = swf_GetU16(tag);
swf_SetTagPos(tag, 0);
id = swf_GetU16(tag);
depth = swf_GetU16(tag);
- MATRIX matrix;
- CXFORM cxform;
swf_GetMatrix(tag, &matrix);
swf_GetCXForm(tag, &cxform, 0);
swf_GetMatrix(tag, &matrix);
swf_GetCXForm(tag, &cxform, 0);
@@
-588,9
+588,15
@@
char* fillstyle2str(FILLSTYLE*style)
case 0x10: case 0x12:
sprintf(stylebuf, "GRADIENT (%d steps)", style->gradient.num);
break;
case 0x10: case 0x12:
sprintf(stylebuf, "GRADIENT (%d steps)", style->gradient.num);
break;
- case 0x40: case 0x41:
+ case 0x40:
+ /* TODO: display information about that bitmap */
+ sprintf(stylebuf, "BITMAPt %d", style->id_bitmap);
+ /* TODO: show matrix */
+ break;
+ case 0x41:
/* TODO: display information about that bitmap */
/* TODO: display information about that bitmap */
- sprintf(stylebuf, "BITMAP %d", style->id_bitmap);
+ sprintf(stylebuf, "BITMAPc %d", style->id_bitmap);
+ /* TODO: show matrix */
break;
default:
sprintf(stylebuf, "UNKNOWN[%02x]",style->type);
break;
default:
sprintf(stylebuf, "UNKNOWN[%02x]",style->type);
@@
-982,9
+988,9
@@
int main (int argc,char ** argv)
else if(tag->id == ST_FRAMELABEL) {
int l = strlen(tag->data);
printf(" \"%s\"", tag->data);
else if(tag->id == ST_FRAMELABEL) {
int l = strlen(tag->data);
printf(" \"%s\"", tag->data);
- if(l < tag->len-1) {
+ if((l+1) < tag->len) {
printf(" has %d extra bytes", tag->len-1-l);
printf(" has %d extra bytes", tag->len-1-l);
- if(tag ->len-1-l == 1 && tag->data[tag->len-1] == 1)
+ if(tag ->len - (l+1) == 1 && tag->data[tag->len-1] == 1)
printf(" (ANCHOR)");
}
if((framelabel && !issprite) ||
printf(" (ANCHOR)");
}
if((framelabel && !issprite) ||