Date: Tuesday, December 12, 2017 @ 08:51:15 Author: heftig Revision: 312193
1.15.10-1 Modified: cairo/trunk/PKGBUILD Deleted: cairo/trunk/color-glyph-source-op.patch -----------------------------+ PKGBUILD | 13 ++++--------- color-glyph-source-op.patch | 39 --------------------------------------- 2 files changed, 4 insertions(+), 48 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2017-12-12 08:14:54 UTC (rev 312192) +++ PKGBUILD 2017-12-12 08:51:15 UTC (rev 312193) @@ -3,8 +3,8 @@ # Contributor: Brice Carpentier <br...@daknet.org> pkgname=cairo -pkgver=1.15.8 -pkgrel=2 +pkgver=1.15.10 +pkgrel=1 pkgdesc="2D graphics library with support for multiple output devices" url="https://cairographics.org/" arch=(x86_64) @@ -11,16 +11,11 @@ license=('LGPL' 'MPL') depends=('libpng' 'libxrender' 'libxext' 'fontconfig' 'pixman' 'glib2' 'lzo') makedepends=('librsvg' 'gtk2' 'poppler-glib' 'libspectre' 'gtk-doc' 'valgrind' 'git') -source=(https://cairographics.org/snapshots/cairo-$pkgver.tar.xz - color-glyph-source-op.patch) -sha1sums=('07cc2031b74d758299eeee3ec49ecbfbfb85f1c6' - '5d8efd47038edcf0debf0a43713bba3025f3cffd') +source=(https://cairographics.org/snapshots/cairo-$pkgver.tar.xz) +sha1sums=('de180498ac563249b93ee5e17ba9aa26f90644b3') prepare() { cd $pkgname-$pkgver - - # https://bugs.freedesktop.org/show_bug.cgi?id=102661 - patch -Np1 -i ../color-glyph-source-op.patch } build() { Deleted: color-glyph-source-op.patch =================================================================== --- color-glyph-source-op.patch 2017-12-12 08:14:54 UTC (rev 312192) +++ color-glyph-source-op.patch 2017-12-12 08:51:15 UTC (rev 312193) @@ -1,39 +0,0 @@ -From 99427c3f4f6ce7ce3c95c4caa4d2b8ff7c0093d9 Mon Sep 17 00:00:00 2001 -From: Behdad Esfahbod <beh...@behdad.org> -Date: Tue, 12 Sep 2017 01:35:15 -0400 -Subject: Handle SOURCE and CLEAR operators when painting color glyphs - -In cairo, most operators are composited this way: - - ((src IN mask) OP dst) LERP_clip dst - -but SOURCE and CLEAR operators are composited this way: - - (src OP dst) LERP_(clip IN mask) dst - -(why is this not specified anywhere in the docs or source tree?) - -With color glyphs, we were not special-casing SOURCE and CLEAR. -We do now. - -Fixes https://bugs.freedesktop.org/show_bug.cgi?id=102661 - -diff --git a/src/cairo-surface.c b/src/cairo-surface.c -index 6f25bd7..35c63d7 100644 ---- a/src/cairo-surface.c -+++ b/src/cairo-surface.c -@@ -2571,7 +2571,10 @@ composite_one_color_glyph (cairo_surface_t *surface, - pattern = cairo_pattern_create_for_surface ((cairo_surface_t *)glyph_surface); - cairo_matrix_init_translate (&matrix, - x, - y); - cairo_pattern_set_matrix (pattern, &matrix); -- status = surface->backend->paint (surface, op, pattern, clip); -+ if (op == CAIRO_OPERATOR_SOURCE || op == CAIRO_OPERATOR_CLEAR) -+ status = surface->backend->mask (surface, op, pattern, pattern, clip); -+ else -+ status = surface->backend->paint (surface, op, pattern, clip); - } - - return status; --- -cgit v0.10.2 -