X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.c;h=28c665d342cfa231f50b0d57b8e8e03eaa5d3044;hb=994fef0b25bdec0762409601706590e63ae41a9f;hp=d8174794df969cb604580c2ceeb9efbb7671d7bd;hpb=69884d51cc4c66b5811d4f6318c0c85745e09345;p=swftools.git diff --git a/lib/rfxswf.c b/lib/rfxswf.c index d817479..28c665d 100644 --- a/lib/rfxswf.c +++ b/lib/rfxswf.c @@ -879,7 +879,9 @@ int swf_WriteTag2(struct writer_t*writer, TAG * t) len = (t->id==ST_DEFINESPRITE)?swf_DefineSprite_GetRealSize(t):t->len; - short_tag = len<0x3f&&(t->id!=ST_DEFINEBITSLOSSLESS&&t->id!=ST_DEFINEBITSLOSSLESS2); + short_tag = len<0x3f&& + (t->id!=ST_DEFINEBITSLOSSLESS&&t->id!=ST_DEFINEBITSLOSSLESS2&&t->id!=ST_SOUNDSTREAMBLOCK&& + t->id!=ST_DEFINEBITSJPEG&&t->id!=ST_DEFINEBITSJPEG2&&t->id!=ST_DEFINEBITSJPEG3); if (writer) { if (short_tag) @@ -1056,7 +1058,10 @@ void swf_FoldSprite(TAG * t) do { - if(t->len<0x3f&&t->id!=ST_DEFINEBITSLOSSLESS&&t->id!=ST_DEFINEBITSLOSSLESS2) { + if(t->len<0x3f&& + (t->id!=ST_DEFINEBITSLOSSLESS&&t->id!=ST_DEFINEBITSLOSSLESS2&&t->id!=ST_SOUNDSTREAMBLOCK&& + t->id!=ST_DEFINEBITSJPEG&&t->id!=ST_DEFINEBITSJPEG2&&t->id!=ST_DEFINEBITSJPEG3) + ) { swf_SetU16(sprtag,t->len|(t->id<<6)); } else { swf_SetU16(sprtag,0x3f|(t->id<<6));