summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authorjoerg <joerg>2008-08-25 15:36:18 +0000
committerjoerg <joerg>2008-08-25 15:36:18 +0000
commit239c332213e26c17dfcffe7812425e33f5011175 (patch)
treefe3dfbbf42ef408d88af5837abbb871fecfcc473 /graphics
parent06e0bcc2afe67d9c7d01ca169013b6d430d974f7 (diff)
downloadpkgsrc-239c332213e26c17dfcffe7812425e33f5011175.tar.gz
Fix png backend with libpng 1.2.30. Older libpng versions flushed the
output at the end of the write and this was restored with 1.2.30, but cairo didn't override the flush function, resulting in fflush on a non-stream. This in turn resulted in crashes of graphviz when compiling doxygen. Bump revision.
Diffstat (limited to 'graphics')
-rw-r--r--graphics/cairo/Makefile4
-rw-r--r--graphics/cairo/distinfo3
-rw-r--r--graphics/cairo/patches/patch-ad27
3 files changed, 31 insertions, 3 deletions
diff --git a/graphics/cairo/Makefile b/graphics/cairo/Makefile
index a4f2bf3afa7..ce3fec87019 100644
--- a/graphics/cairo/Makefile
+++ b/graphics/cairo/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.65 2008/06/23 16:15:43 joerg Exp $
+# $NetBSD: Makefile,v 1.66 2008/08/25 15:36:18 joerg Exp $
DISTNAME= cairo-1.6.4
-PKGREVISION= 2
+PKGREVISION= 3
CATEGORIES= graphics
MASTER_SITES= http://cairographics.org/releases/
diff --git a/graphics/cairo/distinfo b/graphics/cairo/distinfo
index 9e0763bed04..609eca5ba43 100644
--- a/graphics/cairo/distinfo
+++ b/graphics/cairo/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.42 2008/05/14 15:26:14 obache Exp $
+$NetBSD: distinfo,v 1.43 2008/08/25 15:36:18 joerg Exp $
SHA1 (cairo-1.6.4.tar.gz) = 9d990fe39a125ceb07221623c237cd7015855d5c
RMD160 (cairo-1.6.4.tar.gz) = ccae736a40d985b72bda7c2f0a98a0838020658e
@@ -6,3 +6,4 @@ Size (cairo-1.6.4.tar.gz) = 5042623 bytes
SHA1 (patch-aa) = 92b1a9746f4f22ceb2f548eca2cfcf14481fae2a
SHA1 (patch-ab) = 2a0a99846fab962b552efa79c9261927de792dfd
SHA1 (patch-ac) = 8baca078827ebc7c03eecc14c575a440239c3f03
+SHA1 (patch-ad) = 41ebd6097c2e523ae4618bb248a3d66a1b0f9b4a
diff --git a/graphics/cairo/patches/patch-ad b/graphics/cairo/patches/patch-ad
new file mode 100644
index 00000000000..fcf66041b0e
--- /dev/null
+++ b/graphics/cairo/patches/patch-ad
@@ -0,0 +1,27 @@
+$NetBSD: patch-ad,v 1.5 2008/08/25 15:36:18 joerg Exp $
+
+--- src/cairo-png.c.orig 2008-04-11 23:07:25.000000000 +0200
++++ src/cairo-png.c
+@@ -119,6 +119,13 @@ png_simple_warning_callback (png_structp
+ }
+
+
++/* Starting with libpng-1.2.30, we must explicitly specify an output_flush_fn.
++ * Otherwise, we will segfault if we are writing to a stream. */
++static void
++png_simple_output_flush_fn (png_structp png_ptr)
++{
++}
++
+ static cairo_status_t
+ write_png (cairo_surface_t *surface,
+ png_rw_ptr write_func,
+@@ -179,7 +186,7 @@ write_png (cairo_surface_t *surface,
+ goto BAIL3;
+ #endif
+
+- png_set_write_fn (png, closure, write_func, NULL);
++ png_set_write_fn (png, closure, write_func, png_simple_output_flush_fn);
+
+ switch (image->format) {
+ case CAIRO_FORMAT_ARGB32: