packages: splashutils/splashutils-libpng15.patch (NEW)=?UTF-8?Q?=20?=- new

adamg adamg at pld-linux.org
Sun Feb 12 11:10:16 CET 2012


Author: adamg                        Date: Sun Feb 12 10:10:16 2012 GMT
Module: packages                      Tag: HEAD
---- Log message:
- new

---- Files affected:
packages/splashutils:
   splashutils-libpng15.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/splashutils/splashutils-libpng15.patch
diff -u /dev/null packages/splashutils/splashutils-libpng15.patch:1.1
--- /dev/null	Sun Feb 12 11:10:16 2012
+++ packages/splashutils/splashutils-libpng15.patch	Sun Feb 12 11:10:11 2012
@@ -0,0 +1,88 @@
+--- splashutils-1.5.4.3/src/image.c.orig	2012-02-12 10:58:35.946770740 +0100
++++ splashutils-1.5.4.3/src/image.c	2012-02-12 10:58:45.760154729 +0100
+@@ -61,27 +61,27 @@
+ 	png_init_io(png_ptr, fp);
+ 	png_read_info(png_ptr, info_ptr);
+ 
+-	if (cmap && info_ptr->color_type != PNG_COLOR_TYPE_PALETTE)
++	if (cmap && png_get_color_type(png_ptr, info_ptr) != PNG_COLOR_TYPE_PALETTE)
+ 		return -2;
+ 
+-	if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY ||
+-	    info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
++	if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY ||
++	    png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY_ALPHA)
+ 		png_set_gray_to_rgb(png_ptr);
+ 
+-	if (info_ptr->bit_depth == 16)
++	if (png_get_bit_depth(png_ptr, info_ptr) == 16)
+ 		png_set_strip_16(png_ptr);
+ 
+-	if (!want_alpha && info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
++	if (!want_alpha && png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA)
+ 		png_set_strip_alpha(png_ptr);
+ 
+ #ifndef TARGET_KERNEL
+-	if (!(info_ptr->color_type & PNG_COLOR_MASK_ALPHA) & want_alpha) {
++	if (!(png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA) & want_alpha) {
+ 		png_set_add_alpha(png_ptr, 0xff, PNG_FILLER_AFTER);
+ 	}
+ #endif
+ 	png_read_update_info(png_ptr, info_ptr);
+ 
+-	if (!cmap && info_ptr->color_type != PNG_COLOR_TYPE_RGB && info_ptr->color_type != PNG_COLOR_TYPE_RGBA)
++	if (!cmap && png_get_color_type(png_ptr, info_ptr) != PNG_COLOR_TYPE_RGB && png_get_color_type(png_ptr, info_ptr) != PNG_COLOR_TYPE_RGBA)
+ 		return -3;
+ 
+ 	if (cmap) {
+@@ -93,12 +93,12 @@
+ 
+ 	rowbytes = png_get_rowbytes(png_ptr, info_ptr);
+ 
+-	if ((width && *width && info_ptr->width != *width) || (height && *height && info_ptr->height != *height)) {
++	if ((width && *width && png_get_image_width(png_ptr, info_ptr) != *width) || (height && *height && png_get_image_height(png_ptr, info_ptr) != *height)) {
+ 		iprint(MSG_ERROR, "Image size mismatch: %s.\n", filename);
+ 		return -2;
+ 	} else {
+-		*width = info_ptr->width;
+-		*height = info_ptr->height;
++		*width = png_get_image_width(png_ptr, info_ptr);
++		*height = png_get_image_height(png_ptr, info_ptr);
+ 	}
+ 
+ 	*data = malloc(theme->xres * theme->yres * fbd.bytespp);
+@@ -114,11 +114,11 @@
+ 		return -4;
+ 	}
+ 
+-	for (i = 0; i < info_ptr->height; i++) {
++	for (i = 0; i < png_get_image_height(png_ptr, info_ptr); i++) {
+ 		if (cmap) {
+-			row_pointer = *data + info_ptr->width * i;
++			row_pointer = *data + png_get_image_width(png_ptr, info_ptr) * i;
+ 		} else if (want_alpha) {
+-			row_pointer = *data + info_ptr->width * i * 4;
++			row_pointer = *data + png_get_image_width(png_ptr, info_ptr) * i * 4;
+ 		} else {
+ 			row_pointer = buf;
+ 		}
+@@ -127,7 +127,7 @@
+ 
+ 		if (cmap) {
+ 			int h = 256 - cmap->len;
+-			t = *data + info_ptr->width * i;
++			t = *data + png_get_image_width(png_ptr, info_ptr) * i;
+ 
+ 			if (h) {
+ 				/* Move the colors up by 'h' offset. This is used because fbcon
+@@ -139,8 +139,8 @@
+ 
+ 		/* We only need to convert the image if the alpha channel is not required */
+ 		} else if (!want_alpha) {
+-			u8 *tmp = *data + info_ptr->width * bytespp * i;
+-			rgba2fb((rgbacolor*)buf, tmp, tmp, info_ptr->width, i, 0, 0xff);
++			u8 *tmp = *data + png_get_image_width(png_ptr, info_ptr) * bytespp * i;
++			rgba2fb((rgbacolor*)buf, tmp, tmp, png_get_image_width(png_ptr, info_ptr), i, 0, 0xff);
+ 		}
+ 	}
+ 
================================================================


More information about the pld-cvs-commit mailing list