From 7bcaebde547799351834abe2e4fab63bfa815b50 Mon Sep 17 00:00:00 2001
From: kramm <kramm>
Date: Fri, 26 Sep 2008 18:03:28 +0000
Subject: [PATCH] output proper warnings for edittext tags

---
 lib/modules/swfrender.c |   10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/lib/modules/swfrender.c b/lib/modules/swfrender.c
index 8cb04c8..37d0022 100644
--- a/lib/modules/swfrender.c
+++ b/lib/modules/swfrender.c
@@ -1048,7 +1048,7 @@ typedef struct
     SHAPE2**glyphs;
 } font_t;
 
-enum CHARACTER_TYPE {none_type, shape_type, image_type, text_type, font_type, sprite_type};
+enum CHARACTER_TYPE {none_type, shape_type, image_type, text_type, edittext_type, font_type, sprite_type};
 typedef struct
 {
     TAG*tag;
@@ -1233,6 +1233,12 @@ static void renderFromTag(RENDERBUF*buf, character_t*idtable, TAG*firstTag, MATR
 	    info.buf = buf;
 	    
 	    swf_ParseDefineText(tag, textcallback, &info);
+        } else if(idtable[id].type == edittext_type) {
+	    TAG* tag = idtable[id].tag;
+            U16 flags = swf_GetBits(tag, 16);
+	    if(flags & ET_HASTEXT) {
+                fprintf(stderr, "edittext not supported yet (id %d)\n", id);
+            }
         } else {
             fprintf(stderr, "Unknown/Unsupported Object Type for id %d: %s\n", id, swf_TagGetName(idtable[id].tag));
         }
@@ -1302,6 +1308,8 @@ void swf_RenderSWF(RENDERBUF*buf, SWF*swf)
                 idtable[id].type = text_type;
             } else if(tag->id == ST_DEFINESPRITE) {
 		idtable[id].type = sprite_type;
+            } else if(tag->id == ST_DEFINEEDITTEXT) {
+		idtable[id].type = edittext_type;
 	    }
         }
 	tag = tag->next;
-- 
1.7.10.4