[gs-cvs] rev 7624 - trunk/gs/src

leonardo at ghostscript.com leonardo at ghostscript.com
Sat Jan 20 10:39:23 PST 2007


Author: leonardo
Date: 2007-01-20 10:39:23 -0800 (Sat, 20 Jan 2007)
New Revision: 7624

Modified:
   trunk/gs/src/gdevpdtf.c
Log:
Fix (pdfwrite) Don't reassign object ID for shared descendent fonts.

DETAILS :

Bug 689054 "pdfwrite : missed object".

The old code erroneusely assigned object ID at second time
when a descendent CID font is shared with several Type 0 fonts.

EXPECTED DIFFERENCES :

None.


Modified: trunk/gs/src/gdevpdtf.c
===================================================================
--- trunk/gs/src/gdevpdtf.c	2007-01-20 12:12:17 UTC (rev 7623)
+++ trunk/gs/src/gdevpdtf.c	2007-01-20 18:39:23 UTC (rev 7624)
@@ -411,10 +411,12 @@
 	if (pdfont->FontType == 0) {
 	    pdf_font_resource_t *pdfont1 = pdfont->u.type0.DescendantFont;
 
-	    pdf_reserve_object_id(pdev, (pdf_resource_t *)pdfont1, 0);
-	    code = pdf_mark_font_descriptor_used(pdev, pdfont1->FontDescriptor);
-	    if (code < 0)
-		return code;
+	    if (pdf_font_id(pdfont1) == -1) {
+		pdf_reserve_object_id(pdev, (pdf_resource_t *)pdfont1, 0);
+		code = pdf_mark_font_descriptor_used(pdev, pdfont1->FontDescriptor);
+		if (code < 0)
+		    return code;
+	    }
 	}
     }
     return 0;



More information about the gs-cvs mailing list