store temporary files in /tmp.
[swftools.git] / pdf2swf / SWFOutputDev.cc
index 17eecb2..262550c 100644 (file)
@@ -765,7 +765,7 @@ char*writeEmbeddedFontToFile(GfxFont*font)
       Type1CFontConverter *cvt;
       Ref embRef;
       Object refObj, strObj;
-      tmpFileName = "tmpfont";
+      tmpFileName = "/tmp/tmpfont";
       font->getEmbeddedFontID(&embRef);
 
       f = fopen(tmpFileName, "wb");
@@ -804,11 +804,6 @@ char*writeEmbeddedFontToFile(GfxFont*font)
       return fileName;
 }
 
-int embeddedids[128];
-int embeddedt1ids[128];
-int embedded_mappos = 0;
-int embedded_maxpos = 128;
-
 char* gfxFontName(GfxFont* gfxFont)
 {
       GString *gstr;
@@ -851,35 +846,20 @@ void SWFOutputDev::updateFont(GfxState *state)
   Ref embRef;
   GBool embedded = gfxFont->getEmbeddedFontID(&embRef);
   if(embedded) {
-    int t;
-    for(t=0;t<embedded_mappos;t++)
-       if(embeddedids[t] == embRef.num)
-           break;
-    if(t==embedded_mappos || 1)
-    {
-       if (!gfxFont->is16Bit() &&
-           (gfxFont->getType() == fontType1 ||
-            gfxFont->getType() == fontType1C)) {
-           
-           fileName = writeEmbeddedFontToFile(gfxFont);
-           if(!fileName)
-             return ;
-       }
-       else {
-           showFontError(gfxFont,0);
-           return ;
-       }
+    if (!gfxFont->is16Bit() &&
+       (gfxFont->getType() == fontType1 ||
+        gfxFont->getType() == fontType1C)) {
        
-       t1id = T1_AddFont(fileName);
-       embeddedids[embedded_mappos] = embRef.num;
-       embeddedt1ids[embedded_mappos] = t1id;
-       if(embedded_mappos < embedded_maxpos-1)
-           embedded_mappos++;
+       fileName = writeEmbeddedFontToFile(gfxFont);
+       if(!fileName)
+         return ;
     }
-    else 
-    {
-       t1id = embeddedt1ids[t];
+    else {
+       showFontError(gfxFont,0);
+       return ;
     }
+    
+    t1id = T1_AddFont(fileName);
   } else {
     fontname = NULL;
     if(gfxFont->getName()) {