summary refs log tree commit diff
path: root/gnu/packages/pdf.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2016-11-28 19:25:21 +0200
committerEfraim Flashner <efraim@flashner.co.il>2016-11-29 09:45:48 +0200
commitc51d926c740f98883ce3332852e826f57fdf4566 (patch)
tree288bd18a68556ea3a4b8bf876876fbf01b5f2b99 /gnu/packages/pdf.scm
parenteb55f018219e5912fc5606c4e1881a64f8fa5710 (diff)
downloadguix-c51d926c740f98883ce3332852e826f57fdf4566.tar.gz
gnu: cairo: Fix CVE-2016-9082.
* gnu/packages/gtk.scm (cairo)[replacement]: New field.
(cairo/fixed): New variable.
(cairo-xcb)[source]: Use patch.
[replacement]: New field, set false.
* gnu/packages/pdf.scm (poppler)[inputs]: Custom cairo should be
replaced by a new custom patched cairo.
* gnu/packages/patches/cairo-CVE-2016-9082.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Diffstat (limited to 'gnu/packages/pdf.scm')
-rw-r--r--gnu/packages/pdf.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 39f4d021de..6442f08af9 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -95,6 +95,17 @@
              ;; To build poppler-glib (as needed by Evince), we need Cairo and
              ;; GLib.  But of course, that Cairo must not depend on Poppler.
              ("cairo" ,(package (inherit cairo)
+                         (replacement
+                           (package
+                             (inherit cairo)
+                             (replacement #f)
+                             (source
+                               (origin
+                                 (inherit (package-source cairo))
+                                 (patches (search-patches
+                                            "cairo-CVE-2016-9082.patch"))))
+                             (inputs (alist-delete "poppler"
+                                                   (package-inputs cairo)))))
                          (inputs (alist-delete "poppler"
                                                (package-inputs cairo)))))
              ("glib" ,glib)))