Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > bcad270e706b49dcd7d3b92dded440f2 > files > 21

ghostscript-8.15.2-9.12.el5_5.src.rpm

diff -up espgs-8.15.2/src/gsiparam.h.pdf-loop espgs-8.15.2/src/gsiparam.h
--- espgs-8.15.2/src/gsiparam.h.pdf-loop	2005-01-19 04:08:41.000000000 +0000
+++ espgs-8.15.2/src/gsiparam.h	2009-03-31 10:08:27.000000000 +0100
@@ -166,15 +166,22 @@ typedef struct gs_color_space_s gs_color
 		 */\
 	gs_image_format_t format;\
 		/*\
-		 * Define the source color space (must be NULL for masks).\
-		 */\
-	const gs_color_space *ColorSpace;\
-		/*\
 		 * Define whether to use the drawing color as the\
 		 * "texture" for RasterOp.  For more information,\
 		 * see the discussion of RasterOp in Language.htm.\
 		 */\
-	bool CombineWithColor
+	bool CombineWithColor;\
+		/*\
+		 * Define the source color space (must be NULL for masks).\
+		 *\
+                 * Make the pointer the last element of the structure.\
+                 * Otherwise, the padding at the end overwrites the 1st\
+                 * member of the subclass, when the base structure is assigned\
+                 * to the subclass structure. Bugs 613909, 688725\
+                 */\
+	const gs_color_space *ColorSpace
+
+
 typedef struct gs_pixel_image_s {
     gs_pixel_image_common;
 } gs_pixel_image_t;
diff -up espgs-8.15.2/src/gxhintn.h.pdf-loop espgs-8.15.2/src/gxhintn.h
--- espgs-8.15.2/src/gxhintn.h.pdf-loop	2005-01-19 04:08:41.000000000 +0000
+++ espgs-8.15.2/src/gxhintn.h	2009-03-31 10:08:27.000000000 +0100
@@ -102,7 +102,7 @@ typedef struct t1_hinter_s
 {   fraction_matrix ctmf;
     fraction_matrix ctmi;
     unsigned int g2o_fraction_bits;
-    unsigned int max_import_coord;
+    unsigned long max_import_coord;
     int32 g2o_fraction;
     t1_glyph_space_coord orig_gx, orig_gy; /* glyph origin in glyph space */
     t1_glyph_space_coord subglyph_orig_gx, subglyph_orig_gy; /* glyph origin in glyph space */
diff -up espgs-8.15.2/src/gximage3.c.pdf-loop espgs-8.15.2/src/gximage3.c
--- espgs-8.15.2/src/gximage3.c.pdf-loop	2005-03-18 03:27:11.000000000 +0000
+++ espgs-8.15.2/src/gximage3.c	2009-03-31 10:08:27.000000000 +0100
@@ -370,16 +370,10 @@ gx_begin_image3_generic(gx_device * dev,
     }
     gs_image_t_init(&i_pixel, pim->ColorSpace);
     {
-	const bool ImageMask         = i_pixel.ImageMask;
-	const bool adjust	     = i_pixel.adjust;
 	const gx_image_type_t *type1 = i_pixel.type;
-	const gs_image_alpha_t Alpha = i_pixel.Alpha;
 
-	memcpy((gs_pixel_image_t *)&i_pixel, (const gs_pixel_image_t *)pim, sizeof(gs_pixel_image_t));
-	i_pixel.ImageMask = ImageMask;
-	i_pixel.adjust    = adjust;
+	*(gs_pixel_image_t *)&i_pixel = *(const gs_pixel_image_t *)pim;
 	i_pixel.type      = type1;
-	i_pixel.Alpha     = Alpha;
     }
     code = make_mcde(dev, pis, pmat, (const gs_image_common_t *)&i_pixel,
 		     prect, pdcolor, pcpath, mem, &penum->pixel_info,