Package: pslib1
Version: 0.2.6-2
Severity: normal
Tags: patch

pslib's png importing routines aren't aware of how to correctly handle the
presence of the alpha channel i.e. on RGBA png's. My choise was (since the
lack of support for it anyway) to instruct libpng to strip off the alpha
channel, which leads to a working import.

--- pslib.c~    2006-04-06 18:59:40.000000000 -0300
+++ pslib.c     2006-04-06 18:59:40.000000000 -0300
@@ -4357,6 +4357,8 @@
                        png_set_strip_16(png_ptr);
                }
 
+               if (color_type & PNG_COLOR_MASK_ALPHA)
+                 png_set_strip_alpha(png_ptr);
                /* Expand grayscale images to the full 8 bits from 1, 2, or 4 
bits/pixel */
                if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
                        png_set_gray_1_2_4_to_8(png_ptr);


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-1-k7
Locale: LANG=pt_BR, LC_CTYPE=pt_BR (charmap=ISO-8859-1)

Versions of packages pslib1 depends on:
ii  libc6                       2.3.6-4      GNU C Library: Shared libraries an
ii  libjpeg62                   6b-12        The Independent JPEG Group's JPEG 
ii  libpng12-0                  1.2.8rel-5.1 PNG library - runtime

pslib1 recommends no packages.

-- no debconf information
--- pslib.c~	2006-04-06 18:59:40.000000000 -0300
+++ pslib.c	2006-04-06 18:59:40.000000000 -0300
@@ -4357,6 +4357,8 @@
 			png_set_strip_16(png_ptr);
 		}
 
+		if (color_type & PNG_COLOR_MASK_ALPHA)
+		  png_set_strip_alpha(png_ptr);
 		/* Expand grayscale images to the full 8 bits from 1, 2, or 4 bits/pixel */
 		if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
 			png_set_gray_1_2_4_to_8(png_ptr);

Reply via email to