[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Pkg-fonts-devel] Bug#820598: fontforge: undefined symbol: png_longjmp



Control: reassign 820800 fontforge
Control: forcemerge -1 820800
Control: retitle -1 fontforge: undefined symbol: png_longjmp
Control: tags -1 patch pending

Hi,

This bug seems to be caused by incorrect detection of libpng16 in the
configure script. There is special handling for version 16 in the
detection code, but not in the part which adds the linker flags.
Removing the special code for libpng16 fixes the issue (and falls back
to -lpng which should work anyway).

I think that the crashes due to this bug are no longer happening due to
transitive dependencies on libpng16, but I have prepared an NMU with
the patch anyway since relying on these is horrible (and violates
policy).

I've uploaded the attached NMU to DELAYED/5. Please tell me if you want
me to cancel it.

Thanks,
James
diff -Nru fontforge-20120731.b/debian/changelog fontforge-20120731.b/debian/changelog
--- fontforge-20120731.b/debian/changelog	2015-12-16 04:50:26.000000000 +0000
+++ fontforge-20120731.b/debian/changelog	2016-04-16 01:05:34.000000000 +0100
@@ -1,3 +1,10 @@
+fontforge (20120731.b-7.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix undefined symbols when using libpng16. (Closes: #820598)
+
+ -- James Cowgill <jcowgill@debian.org>  Sat, 16 Apr 2016 01:05:09 +0100
+
 fontforge (20120731.b-7.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru fontforge-20120731.b/debian/patches/libpng16.diff fontforge-20120731.b/debian/patches/libpng16.diff
--- fontforge-20120731.b/debian/patches/libpng16.diff	1970-01-01 01:00:00.000000000 +0100
+++ fontforge-20120731.b/debian/patches/libpng16.diff	2016-04-16 00:43:15.000000000 +0100
@@ -0,0 +1,24 @@
+Description: Fix undefined symbol errors when compiled with libpng16
+ Remove the special tests for libpng15 and libpng16, the confiigure script
+ will then fallback to using -lpng which should work anyway.
+Author: James Cowgill <jcowgill@debian.org>
+Bug-Debian: https://bugs.debian.org/820800
+Forwarded: not-needed
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/configure.in
++++ b/configure.in
+@@ -398,12 +398,10 @@ dnl bloody useless thing to do, but chec
+ dnl zlib.h because we never use it directly, only used inside libpng)
+ 
+ AC_CHECK_LIB(z, deflateEnd, : ,AC_DEFINE(_NO_LIBPNG), -lm) 
+-AC_CHECK_LIB(png16, png_create_read_struct, AC_DEFINE(_LIBPNG16),[
+-AC_CHECK_LIB(png15, png_create_read_struct, AC_DEFINE(_LIBPNG15),[
+  AC_CHECK_LIB(png14, png_create_read_struct, AC_DEFINE(_LIBPNG14),[
+   AC_CHECK_LIB(png12, png_create_read_struct, AC_DEFINE(_LIBPNG12),[
+    AC_CHECK_LIB(png, png_create_read_struct, : ,
+-      AC_DEFINE(_NO_LIBPNG), -lz -lm)], -lz -lm)], -lz -lm)], -lz -lm)], -lz -lm)
++      AC_DEFINE(_NO_LIBPNG), -lz -lm)], -lz -lm)], -lz -lm)
+ AC_CHECK_HEADER(png.h, : , AC_DEFINE(_NO_LIBPNG))
+ AC_CHECK_LIB(jpeg, jpeg_CreateDecompress, :  ,AC_DEFINE(_NO_LIBJPEG)) 
+ AC_CHECK_HEADER(jpeglib.h, : , AC_DEFINE(_NO_LIBJPEG))
diff -Nru fontforge-20120731.b/debian/patches/series fontforge-20120731.b/debian/patches/series
--- fontforge-20120731.b/debian/patches/series	2015-12-16 04:51:23.000000000 +0000
+++ fontforge-20120731.b/debian/patches/series	2016-04-16 00:40:05.000000000 +0100
@@ -7,3 +7,4 @@
 671971.diff
 gitignore
 giflib5.diff
+libpng16.diff

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: