generate long tags for soundstreamblock and definejpeg tags, too
authorkramm <kramm>
Fri, 16 Jun 2006 07:02:55 +0000 (07:02 +0000)
committerkramm <kramm>
Fri, 16 Jun 2006 07:02:55 +0000 (07:02 +0000)
lib/rfxswf.c

index d817479..28c665d 100644 (file)
@@ -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));