new function isPseudoDefiningTag.
[swftools.git] / lib / modules / swftools.c
index 2a6e542..47ce10e 100644 (file)
@@ -90,7 +90,7 @@ U16 swf_GetDefineID(TAG * t)
     case ST_DEFINEBUTTONSOUND:
     case ST_DEFINEFONT:
     case ST_DEFINEFONT2:
-    case ST_DEFINEFONTINFO:
+    case ST_DEFINEFONTINFO: //psedodefine
     case ST_DEFINETEXT:
     case ST_DEFINETEXT2:
     case ST_DEFINESOUND:
@@ -172,6 +172,12 @@ static int swf_spritetagids[] =
  -1
 };
 
+static int swf_pseudodefiningtagids[] = 
+{
+ ST_DEFINEFONTINFO,
+ -1
+};
+
 U8 swf_isAllowedSpriteTag(TAG * tag)
 {
     int id = tag->id;
@@ -198,6 +204,19 @@ U8 swf_isDefiningTag(TAG * tag)
     return 0; 
 }
 
+U8 swf_isPseudoDefiningTag(TAG * tag)
+{
+    int id = tag->id;
+    int t=0;
+    while(swf_pseudodefiningtagids[t]>=0)
+    {
+        if(swf_pseudodefiningtagids[t] == id) 
+            return 1;
+        t++;
+    }
+    return 0; 
+}
+
 U16 swf_GetDepth(TAG * t)
 // up to SWF 4.0
 {