+static SRECT getMovieClipBBox(TAG*tag)
+{
+ //TAG*tag = swf->firstTag;
+ int frame=0;
+ SRECT movieSize;
+ U16 depth2id[65536];
+ memset(depth2id, 0, sizeof(depth2id));
+
+ memset(&movieSize,0,sizeof(SRECT));
+
+ while (tag->id != ST_END) {
+ if (tag->id == ST_PLACEOBJECT || tag->id == ST_PLACEOBJECT2) {
+ if(hasid(tag)) {
+ depth2id[swf_GetDepth(tag)] = swf_GetPlaceID(tag);
+ }
+ }
+ if (tag->id == ST_PLACEOBJECT || tag->id == ST_PLACEOBJECT2) {
+ MATRIX m = getmatrix(tag);
+ U16 id = depth2id[swf_GetDepth(tag)];
+ SRECT bbox = bboxes[id];
+
+ SRECT tbbox = swf_TurnRect(bbox, &m);
+ swf_ExpandRect2(&movieSize, &tbbox);
+ }
+ tag = tag->next;
+ }
+ return movieSize;
+}