From 4ca7f5a76f6cd8a8397ecb1078b87e038719a050 Mon Sep 17 00:00:00 2001 From: kramm Date: Thu, 1 Apr 2004 07:57:44 +0000 Subject: [PATCH] frame rate calculation fix from Andrew Mace --- lib/rfxswf.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/rfxswf.c b/lib/rfxswf.c index 94049b2..14ec250 100644 --- a/lib/rfxswf.c +++ b/lib/rfxswf.c @@ -1206,6 +1206,7 @@ int swf_WriteSWF2(struct writer_t*writer, SWF * swf) // Writes SWF to file, int frameCount=0; struct writer_t zwriter; int fileSize = 0; + int inSprite = 0; if (!swf) return -1; @@ -1225,10 +1226,12 @@ int swf_WriteSWF2(struct writer_t*writer, SWF * swf) // Writes SWF to file, t = swf->firstTag; frameCount = 0; - while(t) - { len += swf_WriteTag(-1, t); - if (t->id==ST_SHOWFRAME) frameCount++; - t = swf_NextTag(t); + while(t) { + len += swf_WriteTag(-1,t); + if(t->id == ST_DEFINESPRITE) inSprite++; + else if(t->id == ST_END && inSprite) inSprite--; + else if(t->id == ST_SHOWFRAME && !inSprite) frameCount++; + t = swf_NextTag(t); } { TAG t1; -- 1.7.10.4