summaryrefslogtreecommitdiff
path: root/extra/cairo
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-10-03 01:32:13 -0700
committerroot <root@rshg054.dnsready.net>2012-10-03 01:32:13 -0700
commit1350233b6dc1924ba29a42462447995f26dae0dc (patch)
tree5dfb3384023621f023e449f02df1f035a9b45170 /extra/cairo
parent941550cbc215d608bd18439f99500b74fbb80f0d (diff)
Wed Oct 3 01:31:01 PDT 2012
Diffstat (limited to 'extra/cairo')
-rw-r--r--extra/cairo/PKGBUILD10
-rw-r--r--extra/cairo/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch37
2 files changed, 44 insertions, 3 deletions
diff --git a/extra/cairo/PKGBUILD b/extra/cairo/PKGBUILD
index 52ff6100b..ee34626b9 100644
--- a/extra/cairo/PKGBUILD
+++ b/extra/cairo/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 161326 2012-06-09 14:55:04Z foutrelis $
+# $Id: PKGBUILD 167546 2012-10-02 15:03:57Z foutrelis $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Brice Carpentier <brice@daknet.org>
@@ -6,7 +6,7 @@ pkgname=cairo
#_gitdate=20120426
#_gitver=957a9cc619965178a8927d114fe852034fc2385c
pkgver=1.12.2
-pkgrel=2
+pkgrel=3
pkgdesc="Cairo vector graphics library"
arch=(i686 x86_64)
license=('LGPL' 'MPL')
@@ -21,11 +21,13 @@ source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz
#$pkgname-$pkgver.tar.gz::http://cgit.freedesktop.org/cairo/snapshot/cairo-${_gitver}.tar.gz
cairo-1.10.0-buggy_gradients.patch
cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch
+ cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
#git_fixes.patch
)
md5sums=('87649eb75789739d517c743e94879e51'
'9b323790dab003e228c6955633cb888e'
- '75ec73746cfaefcbed0e9b2a9f76bf00')
+ '75ec73746cfaefcbed0e9b2a9f76bf00'
+ '56f64466fd70ead732b00691464144f2')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -33,6 +35,8 @@ build() {
patch -Np1 -i ${srcdir}/cairo-1.10.0-buggy_gradients.patch
# https://bugs.freedesktop.org/show_bug.cgi?id=50852
patch -Np1 -i ${srcdir}/cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch
+ # https://bugs.freedesktop.org/show_bug.cgi?id=51443
+ patch -Np1 -i ${srcdir}/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
# status is 2012-04-26 last commit: image: Fix typo in _blit_spans()
#patch -Np1 -i ${srcdir}/git_fixes.patch
autoreconf -vfi
diff --git a/extra/cairo/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch b/extra/cairo/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
new file mode 100644
index 000000000..e43a10312
--- /dev/null
+++ b/extra/cairo/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
@@ -0,0 +1,37 @@
+From 2f1d6b27e8b78c77346a5b603114b54400e57d83 Mon Sep 17 00:00:00 2001
+From: Adrian Johnson <ajohnson@redneon.com>
+Date: Thu, 07 Jun 2012 09:48:52 +0000
+Subject: cff-subsetting: Ignore charset for non cid fonts
+
+Fixes crash in https://bugzilla.gnome.org/show_bug.cgi?id=677422
+---
+diff --git a/src/cairo-cff-subset.c b/src/cairo-cff-subset.c
+index db6fdf7..6f0cd66 100644
+--- a/src/cairo-cff-subset.c
++++ b/src/cairo-cff-subset.c
+@@ -1178,14 +1178,16 @@ cairo_cff_font_read_top_dict (cairo_cff_font_t *font)
+ goto fail;
+ font->num_glyphs = _cairo_array_num_elements (&font->charstrings_index);
+
+- operand = cff_dict_get_operands (font->top_dict, CHARSET_OP, &size);
+- if (font->is_cid && !operand)
+- return CAIRO_INT_STATUS_UNSUPPORTED;
++ if (font->is_cid) {
++ operand = cff_dict_get_operands (font->top_dict, CHARSET_OP, &size);
++ if (!operand)
++ return CAIRO_INT_STATUS_UNSUPPORTED;
+
+- decode_integer (operand, &offset);
+- font->charset = font->data + offset;
+- if (font->charset >= font->data_end)
+- return CAIRO_INT_STATUS_UNSUPPORTED;
++ decode_integer (operand, &offset);
++ font->charset = font->data + offset;
++ if (font->charset >= font->data_end)
++ return CAIRO_INT_STATUS_UNSUPPORTED;
++ }
+
+ if (!font->is_opentype)
+ cairo_cff_font_read_font_metrics (font, font->top_dict);
+--
+cgit v0.9.0.2-2-gbebe