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);
+               }
+       }
+ 
================================================================
_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to