fixed bug in pdf2pdf
[swftools.git] / lib / devices / pdf.c
index 1e0d6a8..c1484bb 100644 (file)
@@ -64,6 +64,10 @@ static void restore_matrix(internal_t*i)
     if(i->has_matrix) {
        PDF_restore(i->p);
        i->has_matrix=0;
+       i->m00 = 0;
+       i->m01 = 0;
+       i->m10 = 0;
+       i->m11 = 0;
     }
 }
 static void set_matrix(internal_t*i, double m00, double m01, double m10, double m11)
@@ -100,7 +104,7 @@ void pdf_startpage(gfxdevice_t*dev, int width, int height)
     internal_t*i = (internal_t*)dev->internal;
 
     if(!i->tempfile) {
-       i->tempfile = strdup(mktempname(0));
+       i->tempfile = strdup(mktempname(0, "pdf"));
 
        PDF_begin_document(i->p, i->tempfile, 0, "");
        //PDF_set_value(i->p, "compress", 0);
@@ -281,14 +285,14 @@ void pdf_fillbitmap(gfxdevice_t*dev, gfxline_t*line, gfximage_t*img, gfxmatrix_t
     }
 
     char tempfile[128];
-    mktempname(tempfile);
+    mktempname(tempfile, "jpg");
 
     gfximage_save_jpeg(img, tempfile, 96);
 
     int imgid=-1;
     if(has_alpha) {
        char tempfile2[128];
-       mktempname(tempfile2);
+       mktempname(tempfile2, "jpg");
        int t;
        int size = img->width*img->height;
        unsigned char*alpha = malloc(size);