[arch-commits] Commit in cairo/repos (3 files)

Laurent Carlier lcarlier at archlinux.org
Thu Feb 14 08:55:43 UTC 2019


    Date: Thursday, February 14, 2019 @ 08:55:41
  Author: lcarlier
Revision: 346260

archrelease: copy trunk to testing-x86_64

Added:
  cairo/repos/testing-x86_64/
  cairo/repos/testing-x86_64/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
    (from rev 346259, cairo/trunk/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch)
  cairo/repos/testing-x86_64/PKGBUILD
    (from rev 346259, cairo/trunk/PKGBUILD)

-----------------------------------------------------------------+
 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch |   32 ++++
 PKGBUILD                                                        |   68 ++++++++++
 2 files changed, 100 insertions(+)

Copied: cairo/repos/testing-x86_64/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch (from rev 346259, cairo/trunk/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch)
===================================================================
--- testing-x86_64/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch	                        (rev 0)
+++ testing-x86_64/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch	2019-02-14 08:55:41 UTC (rev 346260)
@@ -0,0 +1,32 @@
+From 90e85c2493fdfa3551f202ff10282463f1e36645 Mon Sep 17 00:00:00 2001
+From: Carlos Garcia Campos <cgarcia at igalia.com>
+Date: Mon, 19 Nov 2018 12:33:07 +0100
+Subject: [PATCH] ft: Use FT_Done_MM_Var instead of free when available in
+ cairo_ft_apply_variations
+
+Fixes a crash when using freetype >= 2.9
+
+Signed-off-by: Laurent Carlier <lordheavym at gmail.com>
+---
+ src/cairo-ft-font.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c
+index 325dd61b4..981973f78 100644
+--- a/src/cairo-ft-font.c
++++ b/src/cairo-ft-font.c
+@@ -2393,7 +2393,11 @@ skip:
+ done:
+         free (coords);
+         free (current_coords);
++#if HAVE_FT_DONE_MM_VAR
++        FT_Done_MM_Var (face->glyph->library, ft_mm_var);
++#else
+         free (ft_mm_var);
++#endif
+     }
+ }
+ 
+-- 
+2.20.1
+

Copied: cairo/repos/testing-x86_64/PKGBUILD (from rev 346259, cairo/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2019-02-14 08:55:41 UTC (rev 346260)
@@ -0,0 +1,68 @@
+# Maintainer: Jan de Groot <jgc at archlinux.org>
+# Contributor: Brice Carpentier <brice at daknet.org>
+
+pkgname=cairo
+pkgver=1.16.0
+pkgrel=2
+pkgdesc="2D graphics library with support for multiple output devices"
+url="https://cairographics.org/"
+arch=(x86_64)
+license=(LGPL MPL)
+depends=(libpng libxrender libxext fontconfig pixman glib2 lzo)
+makedepends=(librsvg gtk2 poppler-glib libspectre gtk-doc valgrind git)
+checkdepends=(ttf-dejavu gsfonts)
+_commit=3ad43122b21a3299dd729dc8462d6b8f7f01142d  # tags/1.16.0^0
+source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit"
+        0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch)
+sha1sums=('SKIP'
+          '9850a5b06e300055676ad1f5dfa90ecba0fe623c')
+
+pkgver() {
+  cd cairo
+  git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+  cd cairo
+
+  # CVE-2018-19876
+  patch -Np1 -i ../0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
+
+  # Update gtk-doc
+  cp /usr/share/aclocal/gtk-doc.m4 build/aclocal.gtk-doc.m4
+  cp /usr/share/gtk-doc/data/gtk-doc.make build/Makefile.am.gtk-doc
+
+  NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+  cd cairo
+  ./configure --prefix=/usr \
+        --sysconfdir=/etc \
+        --localstatedir=/var \
+        --disable-static \
+        --disable-gl \
+        --enable-tee \
+        --enable-svg \
+        --enable-ps \
+        --enable-pdf \
+        --enable-gobject \
+        --enable-gtk-doc \
+        --enable-full-testing \
+        --enable-test-surfaces
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+  make
+}
+
+check() {
+  cd cairo
+  # FIXME: tests don't pass
+  env CAIRO_TEST_TARGET=image \
+      CAIRO_TEST_TARGET_FORMAT=rgba \
+      CAIRO_TESTS='!pthread-show-text' make -k check || :
+}
+
+package() {
+  cd cairo
+  make DESTDIR="$pkgdir" install
+}



More information about the arch-commits mailing list