Bug#820439: imview: diff for NMU version 1.1.9c-12.1
Tobias Frost
tobi at debian.org
Fri Apr 8 14:24:20 UTC 2016
Control: tags 820439 + patch
Control: tags 820439 + pending
Dear maintainer,
I've prepared an NMU for imview (versioned as 1.1.9c-12.1) and
uploaded it to DELAYED/5. Please feel free to tell me if I
should delay it longer.
Regards.
diff -Nru imview-1.1.9c/debian/changelog imview-1.1.9c/debian/changelog
--- imview-1.1.9c/debian/changelog 2013-05-07 21:00:45.000000000 +0200
+++ imview-1.1.9c/debian/changelog 2016-04-08 16:23:52.000000000 +0200
@@ -1,3 +1,10 @@
+imview (1.1.9c-12.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Fix for libpng1.6 (Closes: #820439)
+
+ -- Tobias Frost <tobi at debian.org> Fri, 08 Apr 2016 16:23:52 +0200
+
imview (1.1.9c-12) unstable; urgency=low
[ Sebastian Ramacher ]
diff -Nru imview-1.1.9c/debian/patches/08_fix_libpng16.patch imview-1.1.9c/debian/patches/08_fix_libpng16.patch
--- imview-1.1.9c/debian/patches/08_fix_libpng16.patch 1970-01-01 01:00:00.000000000 +0100
+++ imview-1.1.9c/debian/patches/08_fix_libpng16.patch 2016-04-08 16:23:37.000000000 +0200
@@ -0,0 +1,80 @@
+Description: Patch for libpng1.6
+ libpng1.6 removed direct access of its member functions.
+Author: Tobias Frost <tobi at debian.org>
+Bug-Debian: https://bugs.debian.org/820439
+Forwarded: no
+Last-Update: 2016-04-08
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/io/readpng.cxx
++++ b/io/readpng.cxx
+@@ -96,7 +96,7 @@
+ pp = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
+ info = png_create_info_struct(pp);
+
+- if (setjmp(pp->jmpbuf))
++ if (setjmp(png_jmpbuf(pp)))
+ {
+ errprintf("PNG file \"%s\" contains errors!\n", pngfilename);
+ return 103;
+@@ -108,28 +108,40 @@
+ // Get the image dimensions and convert to grayscale or RGB...
+ png_read_info(pp, info);
+
+- if (info->color_type == PNG_COLOR_TYPE_PALETTE)
++ png_uint_32 width;
++ png_uint_32 height;
++ int bit_depth;
++ int color_type;
++ int interlace_type;
++ int compression_type;
++ int filter_method;
++
++ png_get_IHDR(pp, info, &width, &height,
++ &bit_depth, &color_type, &interlace_type,
++ &compression_type, &filter_method);
++
++ if (color_type == PNG_COLOR_TYPE_PALETTE)
+ png_set_expand(pp);
+
+- if (info->color_type & PNG_COLOR_MASK_COLOR)
++ if (color_type & PNG_COLOR_MASK_COLOR)
+ channels = 3;
+ else
+ channels = 1;
+
+- if ((info->color_type & PNG_COLOR_MASK_ALPHA) || info->num_trans)
++ if ((color_type & PNG_COLOR_MASK_ALPHA) || info->num_trans)
+ channels ++;
+
+- w = (int)(info->width);
+- h = (int)(info->height);
++ w = (int)(width);
++ h = (int)(height);
+ d = channels;
+
+- if (info->bit_depth < 8)
++ if (bit_depth < 8)
+ {
+ png_set_packing(pp);
+ png_set_expand(pp);
+ }
+ // we ought to read the 16-bit data correctly, since we can !
+- else if (info->bit_depth == 16)
++ else if (bit_depth == 16)
+ png_set_strip_16(pp);
+
+ # if defined(HAVE_PNG_GET_VALID) && defined(HAVE_PNG_SET_TRNS_TO_ALPHA)
+--- a/io/readpng.cxx
++++ b/io/readpng.cxx
+@@ -128,7 +128,9 @@
+ else
+ channels = 1;
+
+- if ((color_type & PNG_COLOR_MASK_ALPHA) || info->num_trans)
++ int num_trans;
++ png_get_tRNS(pp, info, NULL, &num_trans, NULL);
++ if ((color_type & PNG_COLOR_MASK_ALPHA) || num_trans)
+ channels ++;
+
+ w = (int)(width);
diff -Nru imview-1.1.9c/debian/patches/series imview-1.1.9c/debian/patches/series
--- imview-1.1.9c/debian/patches/series 2013-05-07 20:20:40.000000000 +0200
+++ imview-1.1.9c/debian/patches/series 2016-04-08 15:45:09.000000000 +0200
@@ -5,3 +5,4 @@
05_fix_dangerous_use_of_strncpy.patch
06_fix_format_not_a_string.patch
07_fix_kfreebsd_FTBFS.patch
+08_fix_libpng16.patch
More information about the debian-science-maintainers
mailing list