aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/imagemagick.scm8
-rw-r--r--gnu/packages/patches/imagemagick-test-segv.patch20
3 files changed, 26 insertions, 3 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 5f8ce2fd2c..8fa25d2000 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -505,6 +505,7 @@ dist_patch_DATA = \
gnu/packages/patches/icecat-freetype-2.6.patch \
gnu/packages/patches/icecat-libvpx-1.4.patch \
gnu/packages/patches/icu4c-CVE-2015-4760.patch \
+ gnu/packages/patches/imagemagick-test-segv.patch \
gnu/packages/patches/irrlicht-mesa-10.patch \
gnu/packages/patches/jbig2dec-ignore-testtest.patch \
gnu/packages/patches/julia-0.3.10-fix-empty-array.patch \
diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index 4e49c60993..8e176845e1 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -23,6 +23,7 @@
#:use-module (guix build-system perl)
#:use-module (guix download)
#:use-module ((guix licenses) #:select (fsf-free))
+ #:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
@@ -37,14 +38,15 @@
(define-public imagemagick
(package
(name "imagemagick")
- (version "6.9.1-3")
+ (version "6.9.2-1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz"))
(sha256
(base32
- "18wbsjfccxlgsdsd6h9wvhcjrsglyi086jk4bk029ik07rh81laz"))))
+ "159afhqrj22jlz745ccbgnkdiwvn8pjcc96jic0iv9ms7gqxwln5"))
+ (patches (list (search-patch "imagemagick-test-segv.patch")))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -84,7 +86,7 @@
("libxml2" ,libxml2)
("libtiff" ,libtiff)
("libpng" ,libpng)
- ("libjpeg" ,libjpeg-8)
+ ("libjpeg" ,libjpeg)
("pango" ,pango)
("freetype" ,freetype)
("bzip2" ,bzip2)
diff --git a/gnu/packages/patches/imagemagick-test-segv.patch b/gnu/packages/patches/imagemagick-test-segv.patch
new file mode 100644
index 0000000000..6626e54828
--- /dev/null
+++ b/gnu/packages/patches/imagemagick-test-segv.patch
@@ -0,0 +1,20 @@
+This patch works around a segmentation fault in 'Magick++/tests/color' when
+running 'Magick++/tests/tests.tap'. Here we get an exception early on, which
+is supposedly harmless:
+
+ Caught exception: color: UnableToOpenConfigureFile `colors.xml' @ warning/configure.c/GetConfigureOptions/706
+
+However, when the stack unwinders run, 'UnregisterDOTImage' gets called even
+though 'RegisterDOTImage' hadn't been called yet; thus, 'graphic_context' in
+coders/dot.c is NULL, leading to the segfault.
+
+--- ImageMagick-6.9.2-1/coders/dot.c 2015-09-16 17:32:42.900323334 +0200
++++ ImageMagick-6.9.2-1/coders/dot.c 2015-09-16 17:32:48.312367636 +0200
+@@ -240,6 +240,7 @@ ModuleExport void UnregisterDOTImage(voi
+ (void) UnregisterMagickInfo("GV");
+ (void) UnregisterMagickInfo("DOT");
+ #if defined(MAGICKCORE_GVC_DELEGATE)
++ if (graphic_context != NULL)
+ gvFreeContext(graphic_context);
+ #endif
+ }