X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fswfc.c;h=eb18eba7a85aedbf224f7db805386abe72698af2;hb=30fd4b7cab65b9303875045e08c215f44463282a;hp=c470fbcf2ec49b640af8634d076622c6d299fb15;hpb=b616dedd400a4798846976e6ace8a8f0b6209285;p=swftools.git diff --git a/src/swfc.c b/src/swfc.c index c470fbc..eb18eba 100644 --- a/src/swfc.c +++ b/src/swfc.c @@ -969,6 +969,9 @@ static void s_endSprite() writeInstance(i); } } + + // the writeInstance loop above may have inserted tags after what used yo be the current tag, + // so let's make sure 'tag' point to the current tag again. while (tag->next) tag = tag->next; @@ -1028,6 +1031,11 @@ static void s_endSWF() swf = stack[stackpos].swf; filename = stack[stackpos].filename; + // the writeInstance loop above may have inserted tags after what used yo be the current tag, + // so let's make sure 'tag' point to the current tag again. + while (tag->next) + tag = tag->next; + //if(tag->prev && tag->prev->id != ST_SHOWFRAME) // tag = swf_InsertTag(tag, ST_SHOWFRAME); tag = swf_InsertTag(tag, ST_SHOWFRAME);