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 <t...@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 <t...@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