git.asbjorn.biz
/
swftools.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3bbf311
)
added depth relocating.
author
kramm
<kramm>
Mon, 2 Feb 2004 08:22:09 +0000
(08:22 +0000)
committer
kramm
<kramm>
Mon, 2 Feb 2004 08:22:09 +0000
(08:22 +0000)
src/swfcombine.c
patch
|
blob
|
history
diff --git
a/src/swfcombine.c
b/src/swfcombine.c
index
103dfe0
..
7c675af
100644
(file)
--- a/
src/swfcombine.c
+++ b/
src/swfcombine.c
@@
-380,6
+380,7
@@
static char* slavename = 0;
static int slaveid = -1;
static int slaveframe = -1;
static char masterbitmap[65536];
static int slaveid = -1;
static int slaveframe = -1;
static char masterbitmap[65536];
+static char depthbitmap[65536];
#define FLAGS_WRITEDEFINES 1
#define FLAGS_WRITENONDEFINES 2
#define FLAGS_WRITEDEFINES 1
#define FLAGS_WRITENONDEFINES 2
@@
-891,14
+892,21
@@
void normalcombine(SWF*master, char*slave_name, SWF*slave, SWF*newswf)
int frame = 0;
char*framelabel;
TAG * tag = master->firstTag;
int frame = 0;
char*framelabel;
TAG * tag = master->firstTag;
+
+ memset(depthbitmap, 0, sizeof(depthbitmap));
// set the idtab
while(tag)
{
// set the idtab
while(tag)
{
+ int depth = swf_GetDepth(tag);
+ if(depth>=0) {
+ depthbitmap[depth] = 1;
+ }
if(swf_isDefiningTag(tag)) {
int defineid = swf_GetDefineID(tag);
msg("<debug> tagid %02x defines object %d", tag->id, defineid);
masterbitmap[defineid] = 1;
if(swf_isDefiningTag(tag)) {
int defineid = swf_GetDefineID(tag);
msg("<debug> tagid %02x defines object %d", tag->id, defineid);
masterbitmap[defineid] = 1;
+
if (!slavename && defineid==slaveid) {
if(defineid>=0) {
spriteid = defineid;
if (!slavename && defineid==slaveid) {
if(defineid>=0) {
spriteid = defineid;
@@
-946,6
+954,7
@@
void normalcombine(SWF*master, char*slave_name, SWF*slave, SWF*newswf)
}
swf_Relocate (slave, masterbitmap);
}
swf_Relocate (slave, masterbitmap);
+ swf_RelocateDepth (slave, depthbitmap);
jpeg_assert(slave, master);
if (config.overlay)
jpeg_assert(slave, master);
if (config.overlay)