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:
e4cb3fe
)
fixed DEFINETEXT relocating
author
kramm
<kramm>
Sat, 27 Oct 2001 18:27:49 +0000
(18:27 +0000)
committer
kramm
<kramm>
Sat, 27 Oct 2001 18:27:49 +0000
(18:27 +0000)
src/reloc.c
patch
|
blob
|
history
diff --git
a/src/reloc.c
b/src/reloc.c
index
f3243a3
..
1582521
100644
(file)
--- a/
src/reloc.c
+++ b/
src/reloc.c
@@
-124,22
+124,25
@@
void map_ids_mem(u8*mem, int length)
num ++;
case TAGID_DEFINETEXT: {
int glyphbits, advancebits;
num ++;
case TAGID_DEFINETEXT: {
int glyphbits, advancebits;
+ int id;
reader_init (newtag->data, newtag->length);
reader_init (newtag->data, newtag->length);
- readu16(); //id
+ id = readu16(); //id
readRECT(); //bounding box
readMATRIX(); //matrix
resetbits();
glyphbits = readu8(); //glyphbits
advancebits = readu8(); //advancebits
while(1) {
readRECT(); //bounding box
readMATRIX(); //matrix
resetbits();
glyphbits = readu8(); //glyphbits
advancebits = readu8(); //advancebits
while(1) {
- u16 flags = getbits(8);
+ u16 flags;
+ resetbits();
+ flags = getbits(8);
if(!flags) break;
if(flags & 128) // text style record
{
if(!flags) break;
if(flags & 128) // text style record
{
+ resetbits();
if(flags & 8) { // hasfont
maponeid(getinputpos());
if(flags & 8) { // hasfont
maponeid(getinputpos());
- resetbits();
- readu16();
+ id = readu16();
}
if(flags & 4) { // hascolor
if(num==1) readRGB();
}
if(flags & 4) { // hascolor
if(num==1) readRGB();
@@
-158,9
+161,12
@@
void map_ids_mem(u8*mem, int length)
readu16();
}
} else { // glyph record
readu16();
}
} else { // glyph record
- getbits(glyphbits);
- getbits(advancebits);
- break;
+ int t;
+ resetbits();
+ for(t=0;t<flags;t++) {
+ getbits(glyphbits);
+ getbits(advancebits);
+ }
}
}
break;
}
}
break;