From: kramm Date: Thu, 1 Apr 2004 07:57:44 +0000 (+0000) Subject: frame rate calculation fix from Andrew Mace X-Git-Tag: stable_core_1~12 X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=commitdiff_plain;h=4ca7f5a76f6cd8a8397ecb1078b87e038719a050 frame rate calculation fix from Andrew Mace --- 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;