[arch-commits] Commit in cairo/trunk (2 files)

2020-05-18 Thread Jan Steffens via arch-commits
Date: Monday, May 18, 2020 @ 13:45:29
  Author: heftig
Revision: 385458

1.17.2+25+gaee96d175-1

Modified:
  cairo/trunk/PKGBUILD
Deleted:
  cairo/trunk/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch

-+
 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch |   27 
--
 PKGBUILD|   15 +
 2 files changed, 5 insertions(+), 37 deletions(-)

Deleted: 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
===
--- 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch 
2020-05-18 11:08:52 UTC (rev 385457)
+++ 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch 
2020-05-18 13:45:29 UTC (rev 385458)
@@ -1,27 +0,0 @@
-From d0dccb92c520556aaa02bd1fdf8f2922cef00292 Mon Sep 17 00:00:00 2001
-From: "Jan Alexander Steffens (heftig)" 
-Date: Sat, 5 Oct 2019 14:07:28 +0200
-Subject: [PATCH] image compositor: Remove the right glyph from pixman's cache
-
-We need to use the index including the phase. Otherwise we leave glyphs
-in the cache that cause problems later as indices are reused.

- src/cairo-image-compositor.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c
-index 6fccb79f1..79ad69f68 100644
 a/src/cairo-image-compositor.c
-+++ b/src/cairo-image-compositor.c
-@@ -841,7 +841,7 @@ _cairo_image_scaled_glyph_fini (cairo_scaled_font_t 
*scaled_font,
- if (global_glyph_cache) {
-   pixman_glyph_cache_remove (
-   global_glyph_cache, scaled_font,
--  (void *)_cairo_scaled_glyph_index (scaled_glyph));
-+  (void *)scaled_glyph->hash_entry.hash);
- }
- 
- CAIRO_MUTEX_UNLOCK (_cairo_glyph_cache_mutex);
--- 
-2.23.0
-

Modified: PKGBUILD
===
--- PKGBUILD2020-05-18 11:08:52 UTC (rev 385457)
+++ PKGBUILD2020-05-18 13:45:29 UTC (rev 385458)
@@ -2,8 +2,8 @@
 # Contributor: Brice Carpentier 
 
 pkgname=cairo
-pkgver=1.17.2+17+g52a7c79fd
-pkgrel=2
+pkgver=1.17.2+25+gaee96d175
+pkgrel=1
 pkgdesc="2D graphics library with support for multiple output devices"
 url="https://cairographics.org/;
 arch=(x86_64)
@@ -11,11 +11,9 @@
 depends=(libpng libxrender libxext fontconfig pixman glib2 lzo)
 makedepends=(librsvg gtk2 poppler-glib libspectre gtk-doc valgrind git)
 checkdepends=(ttf-dejavu gsfonts)
-_commit=52a7c79fd4ff96bb5fac175f0199819b0f8c18fc  # master
-source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit;
-0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch)
-sha256sums=('SKIP'
-'262bf1cebc04eaae93dbfab56045ad800b3b027be303ca2611375645108f171f')
+_commit=aee96d175d8349945a6d1948a56abd4b4ec6ad84  # master
+source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit;)
+sha256sums=('SKIP')
 
 pkgver() {
   cd cairo
@@ -25,9 +23,6 @@
 prepare() {
   cd cairo
 
-  # https://bugs.archlinux.org/task/63856
-  patch -Np1 -i 
../0001-image-compositor-Remove-the-right-glyph-from-pixman-.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


[arch-commits] Commit in cairo/trunk (2 files)

2019-10-05 Thread Jan Steffens via arch-commits
Date: Saturday, October 5, 2019 @ 12:24:36
  Author: heftig
Revision: 363834

1.17.2+17+g52a7c79fd-2

Added:
  cairo/trunk/0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
Modified:
  cairo/trunk/PKGBUILD

-+
 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch |   27 
++
 PKGBUILD|   11 ++--
 2 files changed, 35 insertions(+), 3 deletions(-)

Added: 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch
===
--- 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch 
(rev 0)
+++ 0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch 
2019-10-05 12:24:36 UTC (rev 363834)
@@ -0,0 +1,27 @@
+From d0dccb92c520556aaa02bd1fdf8f2922cef00292 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" 
+Date: Sat, 5 Oct 2019 14:07:28 +0200
+Subject: [PATCH] image compositor: Remove the right glyph from pixman's cache
+
+We need to use the index including the phase. Otherwise we leave glyphs
+in the cache that cause problems later as indices are reused.
+---
+ src/cairo-image-compositor.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c
+index 6fccb79f1..79ad69f68 100644
+--- a/src/cairo-image-compositor.c
 b/src/cairo-image-compositor.c
+@@ -841,7 +841,7 @@ _cairo_image_scaled_glyph_fini (cairo_scaled_font_t 
*scaled_font,
+ if (global_glyph_cache) {
+   pixman_glyph_cache_remove (
+   global_glyph_cache, scaled_font,
+-  (void *)_cairo_scaled_glyph_index (scaled_glyph));
++  (void *)scaled_glyph->hash_entry.hash);
+ }
+ 
+ CAIRO_MUTEX_UNLOCK (_cairo_glyph_cache_mutex);
+-- 
+2.23.0
+

Modified: PKGBUILD
===
--- PKGBUILD2019-10-05 09:08:49 UTC (rev 363833)
+++ PKGBUILD2019-10-05 12:24:36 UTC (rev 363834)
@@ -3,7 +3,7 @@
 
 pkgname=cairo
 pkgver=1.17.2+17+g52a7c79fd
-pkgrel=1
+pkgrel=2
 pkgdesc="2D graphics library with support for multiple output devices"
 url="https://cairographics.org/;
 arch=(x86_64)
@@ -12,8 +12,10 @@
 makedepends=(librsvg gtk2 poppler-glib libspectre gtk-doc valgrind git)
 checkdepends=(ttf-dejavu gsfonts)
 _commit=52a7c79fd4ff96bb5fac175f0199819b0f8c18fc  # master
-source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit;)
-sha256sums=('SKIP')
+source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit;
+0001-image-compositor-Remove-the-right-glyph-from-pixman-.patch)
+sha256sums=('SKIP'
+'262bf1cebc04eaae93dbfab56045ad800b3b027be303ca2611375645108f171f')
 
 pkgver() {
   cd cairo
@@ -23,6 +25,9 @@
 prepare() {
   cd cairo
 
+  # https://bugs.archlinux.org/task/63856
+  patch -Np1 -i 
../0001-image-compositor-Remove-the-right-glyph-from-pixman-.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


[arch-commits] Commit in cairo/trunk (2 files)

2019-08-02 Thread Jan Steffens via arch-commits
Date: Friday, August 2, 2019 @ 14:57:22
  Author: heftig
Revision: 358890

1.17.2+17+g52a7c79fd-1

Modified:
  cairo/trunk/PKGBUILD
Deleted:
  cairo/trunk/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch

-+
 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch |   32 
--
 PKGBUILD|   20 ++
 2 files changed, 9 insertions(+), 43 deletions(-)

Deleted: 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
===
--- 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch 
2019-08-02 14:17:33 UTC (rev 358889)
+++ 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch 
2019-08-02 14:57:22 UTC (rev 358890)
@@ -1,32 +0,0 @@
-From 90e85c2493fdfa3551f202ff10282463f1e36645 Mon Sep 17 00:00:00 2001
-From: Carlos Garcia Campos 
-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 

- 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
-

Modified: PKGBUILD
===
--- PKGBUILD2019-08-02 14:17:33 UTC (rev 358889)
+++ PKGBUILD2019-08-02 14:57:22 UTC (rev 358890)
@@ -2,8 +2,8 @@
 # Contributor: Brice Carpentier 
 
 pkgname=cairo
-pkgver=1.16.0
-pkgrel=2
+pkgver=1.17.2+17+g52a7c79fd
+pkgrel=1
 pkgdesc="2D graphics library with support for multiple output devices"
 url="https://cairographics.org/;
 arch=(x86_64)
@@ -11,11 +11,9 @@
 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')
+_commit=52a7c79fd4ff96bb5fac175f0199819b0f8c18fc  # master
+source=("git+https://gitlab.freedesktop.org/cairo/cairo.git#commit=$_commit;)
+sha256sums=('SKIP')
 
 pkgver() {
   cd cairo
@@ -25,13 +23,13 @@
 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
 
+  # Fix typo
+  sed -i 's/have_png/use_png/g' configure.ac
+
   NOCONFIGURE=1 ./autogen.sh
 }
 
@@ -50,7 +48,7 @@
 --enable-gtk-doc \
 --enable-full-testing \
 --enable-test-surfaces
-  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+  sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
   make
 }
 


[arch-commits] Commit in cairo/trunk (2 files)

2019-02-14 Thread Laurent Carlier via arch-commits
Date: Thursday, February 14, 2019 @ 08:55:33
  Author: lcarlier
Revision: 346259

upgpkg: cairo 1.16.0-2

fix CVE-2018-19876

Added:
  cairo/trunk/0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
Modified:
  cairo/trunk/PKGBUILD

-+
 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch |   32 
++
 PKGBUILD|   11 ++-
 2 files changed, 40 insertions(+), 3 deletions(-)

Added: 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch
===
--- 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch 
(rev 0)
+++ 0001-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch 
2019-02-14 08:55:33 UTC (rev 346259)
@@ -0,0 +1,32 @@
+From 90e85c2493fdfa3551f202ff10282463f1e36645 Mon Sep 17 00:00:00 2001
+From: Carlos Garcia Campos 
+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 
+---
+ 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
+

Modified: PKGBUILD
===
--- PKGBUILD2019-02-14 08:55:17 UTC (rev 346258)
+++ PKGBUILD2019-02-14 08:55:33 UTC (rev 346259)
@@ -3,7 +3,7 @@
 
 pkgname=cairo
 pkgver=1.16.0
-pkgrel=1
+pkgrel=2
 pkgdesc="2D graphics library with support for multiple output devices"
 url="https://cairographics.org/;
 arch=(x86_64)
@@ -12,8 +12,10 @@
 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;)
-sha1sums=('SKIP')
+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
@@ -23,6 +25,9 @@
 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


[arch-commits] Commit in cairo/trunk (2 files)

2013-01-31 Thread Andreas Radke
Date: Thursday, January 31, 2013 @ 18:47:33
  Author: andyrtr
Revision: 176806

upgpkg: cairo 1.12.12-1

upstream update 1.12.12

Modified:
  cairo/trunk/PKGBUILD
Deleted:
  
cairo/trunk/xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch

-+
 PKGBUILD|  
 11 -
 xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch |  
 90 --
 2 files changed, 4 insertions(+), 97 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2013-01-31 17:39:46 UTC (rev 176805)
+++ PKGBUILD2013-01-31 17:47:33 UTC (rev 176806)
@@ -3,8 +3,8 @@
 # Contributor: Brice Carpentier br...@daknet.org
 
 pkgname=cairo
-pkgver=1.12.10
-pkgrel=3
+pkgver=1.12.12
+pkgrel=1
 pkgdesc=Cairo vector graphics library
 arch=(i686 x86_64)
 license=('LGPL' 'MPL')
@@ -15,14 +15,11 @@
 provides=('cairo-xcb')
 replaces=('cairo-xcb')
 options=('!libtool')
-source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz
-
xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch)
-sha1sums=('be06d5aaa272bbbd08380f71ca710d5612881493'
-  '0631cc80b7512275d2be1d7d41497384013963ed')
+source=(http://cairographics.org/releases/$pkgname-$pkgver.tar.xz)
+sha1sums=('8e597874da5b861287893d87dd4ab32471e99c82')
 
 build() {
   cd $srcdir/$pkgname-$pkgver
-  patch -Np1 -i 
${srcdir}/xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch
   ./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \

Deleted: 
xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch
===
--- xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch 
2013-01-31 17:39:46 UTC (rev 176805)
+++ xlib_Do_not_upload_the_whole_image_just_because_we_want_an_entire_row.patch 
2013-01-31 17:47:33 UTC (rev 176806)
@@ -1,90 +0,0 @@
-From fa4f48cccb6c7f4e1afb2ff4b98b906b7d8d4afc Mon Sep 17 00:00:00 2001
-From: Chris Wilson ch...@chris-wilson.co.uk
-Date: Wed, 23 Jan 2013 15:04:26 +
-Subject: xlib: Do not upload the whole image just because we want an entire row
-
-Fixes regression exposed by
-
-commit a73e7ff0186176bc82cd3ae1432c054c1fd3aebd
-Author: Chris Wilson ch...@chris-wilson.co.uk
-Date:   Sun Jan 6 11:29:27 2013 +
-
-xlib: Simplify source creation by use of map-to-image
-
-but ultimately from
-
-commit 74941f822015cc50cd8477d0cf97f1a70dbff60b
-Author: Chris Wilson ch...@chris-wilson.co.uk
-Date:   Wed Jan 2 22:27:55 2013 +
-
-xlib: Use SHM transport for ordinary image uploads
-
-Reported-by: Gökçen Eraslan gokcen.eras...@gmail.com
-Reported-by: Guillaume Ayoub guillaume.ay...@kozea.fr
-Reported-by: Emmanuel Benisty benist...@gmail.com
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59635
-Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk

-diff --git a/src/cairo-xlib-source.c b/src/cairo-xlib-source.c
-index 24290f7..ca55278 100644
 a/src/cairo-xlib-source.c
-+++ b/src/cairo-xlib-source.c
-@@ -1035,7 +1035,13 @@ surface_source (cairo_xlib_surface_t *dst,
- 
-   status = _cairo_surface_unmap_image (xsrc-base, image);
-   if (unlikely (status)) {
--  cairo_surface_destroy (src);
-+  cairo_surface_destroy (xsrc-base);
-+  return _cairo_surface_create_in_error (status);
-+  }
-+
-+  status = _cairo_xlib_surface_put_shm (xsrc);
-+  if (unlikely (status)) {
-+  cairo_surface_destroy (xsrc-base);
-   return _cairo_surface_create_in_error (status);
-   }
- }
-diff --git a/src/cairo-xlib-surface.c b/src/cairo-xlib-surface.c
-index dbc677e..ee69b66 100644
 a/src/cairo-xlib-surface.c
-+++ b/src/cairo-xlib-surface.c
-@@ -1139,26 +1139,24 @@ _cairo_xlib_surface_draw_image (cairo_xlib_surface_t   
*surface,
-   max_request_size = XMaxRequestSize (display-display);
-   if (max_request_size  8192)
-   max_request_size = 8192;
--  if (image-stride * image-height  max_request_size) {
-+  if (width * height * 4  max_request_size) {
-   shm_image = _cairo_xlib_surface_create_shm__image (surface,
-  
image-pixman_format,
-- image-width,
-- 
image-height);
-+ width, 
height);
-   if (shm_image  shm_image-status == CAIRO_STATUS_SUCCESS) {
-   cairo_image_surface_t *clone = (cairo_image_surface_t *) 
shm_image;
--  if (clone-stride == image-stride) {
--  memcpy (clone-data, image-data, 

[arch-commits] Commit in cairo/trunk (2 files)

2012-10-02 Thread Evangelos Foutras
Date: Tuesday, October 2, 2012 @ 11:03:19
  Author: foutrelis
Revision: 167545

upgpkg: cairo 1.12.2-3

Fix FS#31509: libcairo.so segfault when printing certain PDF files

Added:
  cairo/trunk/cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
Modified:
  cairo/trunk/PKGBUILD

-+
 PKGBUILD|8 ++-
 cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch |   37 ++
 2 files changed, 43 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2012-10-02 13:24:36 UTC (rev 167544)
+++ PKGBUILD2012-10-02 15:03:19 UTC (rev 167545)
@@ -6,7 +6,7 @@
 #_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 @@
 
#$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 @@
   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

Added: cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch
===
--- cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch 
(rev 0)
+++ cairo-1.12.2-ignore-charset-for-non-cid-fonts.patch 2012-10-02 15:03:19 UTC 
(rev 167545)
@@ -0,0 +1,37 @@
+From 2f1d6b27e8b78c77346a5b603114b54400e57d83 Mon Sep 17 00:00:00 2001
+From: Adrian Johnson ajohn...@redneon.com
+Date: Thu, 07 Jun 2012 09:48:52 +
+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



[arch-commits] Commit in cairo/trunk (2 files)

2012-06-08 Thread Evangelos Foutras
Date: Friday, June 8, 2012 @ 13:28:17
  Author: foutrelis
Revision: 161276

upgpkg: cairo 1.12.2-2

Fix FS#29751: xfce4-panel segfault

Added:
  cairo/trunk/cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch
Modified:
  cairo/trunk/PKGBUILD

+
 PKGBUILD   |8 
 cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch |  275 +++
 2 files changed, 281 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===
--- PKGBUILD2012-06-08 13:30:23 UTC (rev 161275)
+++ PKGBUILD2012-06-08 17:28:17 UTC (rev 161276)
@@ -6,7 +6,7 @@
 #_gitdate=20120426
 #_gitver=957a9cc619965178a8927d114fe852034fc2385c
 pkgver=1.12.2
-pkgrel=1
+pkgrel=2
 pkgdesc=Cairo vector graphics library
 arch=(i686 x86_64)
 license=('LGPL' 'MPL')
@@ -20,15 +20,19 @@
 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
 #git_fixes.patch 
 )
 md5sums=('87649eb75789739d517c743e94879e51'
- '9b323790dab003e228c6955633cb888e')
+ '9b323790dab003e228c6955633cb888e'
+ '75ec73746cfaefcbed0e9b2a9f76bf00')
 
 build() {
   cd $srcdir/$pkgname-$pkgver
   #cd ${srcdir}/${pkgname}-${_gitver}
   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
   # status is 2012-04-26 last commit: image: Fix typo in _blit_spans()
   #patch -Np1 -i ${srcdir}/git_fixes.patch
   autoreconf -vfi

Added: cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch
===
--- cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch  
(rev 0)
+++ cairo-1.12.2-reduce-broken-stopped-edge-continuation.patch  2012-06-08 
17:28:17 UTC (rev 161276)
@@ -0,0 +1,275 @@
+From f228769dfe5a8b5d73c49a41e95e31ed73a77fb3 Mon Sep 17 00:00:00 2001
+From: Chris Wilson ch...@chris-wilson.co.uk
+Date: Fri, 08 Jun 2012 16:22:41 +
+Subject: polygon-reduce: Reduce broken stopped-edge continuation
+
+This is hopefully a lesser used path and the attempted optimisation to
+continue a stopped edge with a colinear stopped edge highly unlikely and
+lost in the noise of the general inefficiency of the routine. As it was
+broken, rather than attempt to rectify the optimisation remove it.
+
+Reported-by: Evangelos Foutras evange...@foutrelis.com
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50852
+Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk
+---
+diff --git a/src/cairo-polygon-reduce.c b/src/cairo-polygon-reduce.c
+index 8758070..ea457fe 100644
+--- a/src/cairo-polygon-reduce.c
 b/src/cairo-polygon-reduce.c
+@@ -42,6 +42,8 @@
+ #include cairo-freelist-private.h
+ #include cairo-combsort-inline.h
+ 
++#define DEBUG_POLYGON 0
++
+ typedef cairo_point_t cairo_bo_point32_t;
+ 
+ typedef struct _cairo_bo_intersect_ordinate {
+@@ -114,7 +116,6 @@ typedef struct _cairo_bo_event_queue {
+ 
+ typedef struct _cairo_bo_sweep_line {
+ cairo_bo_edge_t *head;
+-cairo_bo_edge_t *stopped;
+ int32_t current_y;
+ cairo_bo_edge_t *current_edge;
+ } cairo_bo_sweep_line_t;
+@@ -476,8 +477,8 @@ edges_compare_x_for_y (const cairo_bo_edge_t *a,
+ static inline int
+ _line_equal (const cairo_line_t *a, const cairo_line_t *b)
+ {
+-return a-p1.x == b-p1.x  a-p1.y == b-p1.y 
+-   a-p2.x == b-p2.x  a-p2.y == b-p2.y;
++return (a-p1.x == b-p1.x  a-p1.y == b-p1.y 
++  a-p2.x == b-p2.x  a-p2.y == b-p2.y);
+ }
+ 
+ static int
+@@ -1024,7 +1025,6 @@ static void
+ _cairo_bo_sweep_line_init (cairo_bo_sweep_line_t *sweep_line)
+ {
+ sweep_line-head = NULL;
+-sweep_line-stopped = NULL;
+ sweep_line-current_y = INT32_MIN;
+ sweep_line-current_edge = NULL;
+ }
+@@ -1139,6 +1139,8 @@ edges_colinear (const cairo_bo_edge_t *a, const 
cairo_bo_edge_t *b)
+  */
+ if (a-edge.line.p1.y == b-edge.line.p1.y) {
+   return a-edge.line.p1.x == b-edge.line.p1.x;
++} else if (a-edge.line.p2.y == b-edge.line.p2.y) {
++  return a-edge.line.p2.x == b-edge.line.p2.x;
+ } else if (a-edge.line.p1.y  b-edge.line.p1.y) {
+   return edge_compare_for_y_against_x (b,
+a-edge.line.p1.y,
+@@ -1205,82 +1207,48 @@ _active_edges_to_polygon (cairo_bo_edge_t  
*left,
+ cairo_polygon_t   *polygon)
+ {
+ cairo_bo_edge_t *right;
++unsigned int mask;
+ 
+-if (fill_rule == CAIRO_FILL_RULE_WINDING) {
+-  while (left != NULL) {
+-  int in_out = left-edge.dir;
+-
+-  right =