set previously uninitialized variables
[swftools.git] / lib / modules / swftext.c
index b6579d7..24bde3c 100644 (file)
@@ -400,7 +400,7 @@ swf_FontExtract_DefineTextCallback(int id, SWFFONT * f, TAG * t, int jobs,
     SRECT r;
     MATRIX m;
     U8 gbits, abits;
-    int fid = 0;
+    int fid = -1;
     RGBA color;
     int x = 0, y = 0;
     int fontsize = 0;
@@ -459,7 +459,6 @@ swf_FontExtract_DefineTextCallback(int id, SWFFONT * f, TAG * t, int jobs,
                adv = swf_GetBits(t, abits);
                xpos += adv;
 
-               // <deprecated>
                if (id == fid) {
                    if (jobs & FEDTJ_PRINT) {
                        int code = f->glyph2ascii[glyph];
@@ -467,12 +466,7 @@ swf_FontExtract_DefineTextCallback(int id, SWFFONT * f, TAG * t, int jobs,
                    }
                    if (jobs & FEDTJ_MODIFY)
                        f->glyph[glyph].advance = adv * 20;     //?
-               } else {
-                   if (jobs & FEDTJ_PRINT) {
-                       printf("?");
-                   }
                }
-               // </deprecated>
 
                buf[i] = glyph;
            }
@@ -684,7 +678,7 @@ int swf_FontReduce_swfc(SWFFONT * f)
     }
     f->use->used_glyphs = j;
     for (i = 0; i < f->maxascii; i++) {
-       if(f->ascii2glyph[i] > -1)
+       if(f->ascii2glyph[i] > -1) {
            if (f->use->chars[f->ascii2glyph[i]]<0) {
                f->use->chars[f->ascii2glyph[i]] = 0;
                f->ascii2glyph[i] = -1;
@@ -693,6 +687,7 @@ int swf_FontReduce_swfc(SWFFONT * f)
                f->use->chars[f->ascii2glyph[i]] = 1;
                max_unicode = i + 1;
            }
+       }
     }
     f->maxascii = max_unicode;
     f->use->is_reduced = 1;
@@ -820,6 +815,7 @@ int swf_FontInitUsage(SWFFONT * f)
     }
     f->use = rfx_alloc(sizeof(FONTUSAGE));
     f->use->is_reduced = 0;
+    f->use->used_glyphs = 0;
     f->use->chars = rfx_calloc(sizeof(f->use->chars[0]) * f->numchars);
     return 0;
 }