File libpng14.diff of Package fontforge

Index: fontforge-20090923/gutils/gimagereadpng.c
===================================================================
--- fontforge-20090923.orig/gutils/gimagereadpng.c	2009-02-22 18:26:06.000000000 +0100
+++ fontforge-20090923/gutils/gimagereadpng.c	2010-04-08 09:54:52.000000000 +0200
@@ -220,13 +220,13 @@ return( NULL );
     if ( (info_ptr->valid&PNG_INFO_tRNS) && info_ptr->num_trans>0 ) {
 	if ( info_ptr->color_type==PNG_COLOR_TYPE_RGB || info_ptr->color_type==PNG_COLOR_TYPE_RGB_ALPHA )
 	    base->trans = COLOR_CREATE(
-		    (info_ptr->trans_values.red>>8),
-		    (info_ptr->trans_values.green>>8),
-		    (info_ptr->trans_values.blue>>8));
+                  (info_ptr->trans_color.red>>8),
+                  (info_ptr->trans_color.green>>8),
+                  (info_ptr->trans_color.blue>>8));
 	else if ( base->image_type == it_mono )
-	    base->trans = info_ptr->trans[0];
+          base->trans = info_ptr->trans_alpha[0];
 	else
-	    base->clut->trans_index = base->trans = info_ptr->trans[0];
+          base->clut->trans_index = base->trans = info_ptr->trans_alpha[0];
     }
 
     row_pointers = galloc(info_ptr->height*sizeof(png_bytep));
Index: fontforge-20090923/gutils/gimagewritepng.c
===================================================================
--- fontforge-20090923.orig/gutils/gimagewritepng.c	2009-02-22 18:26:06.000000000 +0100
+++ fontforge-20090923/gutils/gimagewritepng.c	2010-04-08 10:03:02.000000000 +0200
@@ -183,8 +183,8 @@ return(false);
        if ( info_ptr->num_palette<=16 )
 	   _png_set_packing(png_ptr);
        if ( base->trans!=-1 ) {
-	   info_ptr->trans = galloc(1);
-	   info_ptr->trans[0] = base->trans;
+	   info_ptr->trans_alpha = galloc(1);
+	   info_ptr->trans_alpha[0] = base->trans;
        }
    } else {
        info_ptr->color_type = PNG_COLOR_TYPE_RGB;
@@ -192,9 +192,9 @@ return(false);
 	   info_ptr->color_type = PNG_COLOR_TYPE_RGB_ALPHA;
 
        if ( base->trans!=-1 ) {
-	   info_ptr->trans_values.red = COLOR_RED(base->trans);
-	   info_ptr->trans_values.green = COLOR_GREEN(base->trans);
-	   info_ptr->trans_values.blue = COLOR_BLUE(base->trans);
+	   info_ptr->trans_color.red = COLOR_RED(base->trans);
+	   info_ptr->trans_color.green = COLOR_GREEN(base->trans);
+	   info_ptr->trans_color.blue = COLOR_BLUE(base->trans);
        }
    }
    _png_write_info(png_ptr, info_ptr);
@@ -210,7 +210,7 @@ return(false);
 
     _png_write_end(png_ptr, info_ptr);
 
-    if ( info_ptr->trans!=NULL ) gfree(info_ptr->trans);
+    if ( info_ptr->trans_alpha!=NULL ) gfree(info_ptr->trans_alpha);
     if ( info_ptr->palette!=NULL ) gfree(info_ptr->palette);
     _png_destroy_write_struct(&png_ptr, &info_ptr);
     gfree(rows);
@@ -314,15 +314,15 @@ return(false);
        if ( info_ptr->num_palette<=16 )
 	   png_set_packing(png_ptr);
        if ( base->trans!=-1 ) {
-	   info_ptr->trans = galloc(1);
-	   info_ptr->trans[0] = base->trans;
+         info_ptr->trans_alpha = galloc(1);
+         info_ptr->trans_alpha[0] = base->trans;
        }
    } else {
        info_ptr->color_type = PNG_COLOR_TYPE_RGB;
        if ( base->trans!=-1 ) {
-	   info_ptr->trans_values.red = COLOR_RED(base->trans);
-	   info_ptr->trans_values.green = COLOR_GREEN(base->trans);
-	   info_ptr->trans_values.blue = COLOR_BLUE(base->trans);
+         info_ptr->trans_color.red = COLOR_RED(base->trans);
+         info_ptr->trans_color.green = COLOR_GREEN(base->trans);
+         info_ptr->trans_color.blue = COLOR_BLUE(base->trans);
        }
    }
    png_write_info(png_ptr, info_ptr);
@@ -338,7 +338,7 @@ return(false);
 
     png_write_end(png_ptr, info_ptr);
 
-    if ( info_ptr->trans!=NULL ) gfree(info_ptr->trans);
+    if ( info_ptr->trans_alpha!=NULL ) gfree(info_ptr->trans_alpha);
     if ( info_ptr->palette!=NULL ) gfree(info_ptr->palette);
     png_destroy_write_struct(&png_ptr, &info_ptr);
     gfree(rows);
openSUSE Build Service is sponsored by