From 3ed4c8a0240013adca52f2c5ec002617c22d085de2a47194fa125c60f56ca8fc Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Wed, 28 Oct 2015 15:41:51 +0000 Subject: [PATCH 1/4] Accepting request 340746 from home:olh:branches:GNOME:Factory - Fix another segfault in active_edges (fdo#59098) cairo-active_edges.patch OBS-URL: https://build.opensuse.org/request/show/340746 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=97 --- cairo-active_edges.patch | 18 ++++++++++++++++++ cairo.changes | 6 ++++++ cairo.spec | 3 +++ 3 files changed, 27 insertions(+) create mode 100644 cairo-active_edges.patch diff --git a/cairo-active_edges.patch b/cairo-active_edges.patch new file mode 100644 index 0000000..5421f95 --- /dev/null +++ b/cairo-active_edges.patch @@ -0,0 +1,18 @@ +https://bugs.freedesktop.org/show_bug.cgi?id=59098 +--- cairo-1.14.2.orig/src/cairo-polygon-intersect.c ++++ cairo-1.14.2/src/cairo-polygon-intersect.c +@@ -1236,11 +1236,10 @@ active_edges (cairo_bo_edge_t *left, + edges_end (right, top, polygon); + + winding[right->a_or_b] += right->edge.dir; +- if (is_zero (winding)) { +- if (right->next == NULL || +- ! edges_colinear (right, right->next)) ++ if (!right->next) ++ return; ++ if (is_zero (winding) && ! edges_colinear (right, right->next)) + break; +- } + + right = right->next; + } while (1); diff --git a/cairo.changes b/cairo.changes index a27fe54..c6e4b63 100644 --- a/cairo.changes +++ b/cairo.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sat Oct 24 12:24:48 UTC 2015 - olaf@aepfle.de + +- Fix another segfault in active_edges (fdo#59098) + cairo-active_edges.patch + ------------------------------------------------------------------- Sat May 16 10:42:31 CEST 2015 - ro@suse.de diff --git a/cairo.spec b/cairo.spec index 3c704cd..f5ca131 100644 --- a/cairo.spec +++ b/cairo.spec @@ -33,6 +33,8 @@ Patch0: cairo-modules-no-version.patch Patch1: cairo-render-thin-lines.patch # PATCH-FIX-UPSTREAM cairo-xlib-endianness.patch fdo#63461 bnc#882951 fcrozat@suse.com -- Fix crash when client and server have different endianness Patch2: cairo-xlib-endianness.patch +# PATCH-FIX-UPSTREAM cairo-active_edges.patch fdo#59098 olaf@aepfle.de -- segfault in cairo-polygon-intersect.c: active_edges +Patch59098: cairo-active_edges.patch BuildRequires: gtk-doc # Needed by patch0 BuildRequires: libtool @@ -144,6 +146,7 @@ cairo. # fix_for_fdo77298.patch %patch1 -p1 %patch2 -p1 +%patch59098 -p1 %build # Needed by patch0 and patch1 From 523496a5b5050d2007860c8c699f438f104dabfa67e9995ca2ad9c0c43b13254 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Wed, 28 Oct 2015 15:42:25 +0000 Subject: [PATCH 2/4] - Add cairo-active_edges.patch: Fix another segfault in active_edges (fdo#59098). OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=98 --- cairo.changes | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cairo.changes b/cairo.changes index c6e4b63..86eeeb4 100644 --- a/cairo.changes +++ b/cairo.changes @@ -1,8 +1,8 @@ ------------------------------------------------------------------- Sat Oct 24 12:24:48 UTC 2015 - olaf@aepfle.de -- Fix another segfault in active_edges (fdo#59098) - cairo-active_edges.patch +- Add cairo-active_edges.patch: Fix another segfault in + active_edges (fdo#59098). ------------------------------------------------------------------- Sat May 16 10:42:31 CEST 2015 - ro@suse.de From da73d799836a7b00e7ecc4b483cb7d5b6792bdf32551938bd965043d765414d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Thu, 29 Oct 2015 13:10:39 +0000 Subject: [PATCH 3/4] Accepting request 341499 from GNOME:Factory Revert OBS-URL: https://build.opensuse.org/request/show/341499 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=99 --- cairo-active_edges.patch | 18 ------------------ cairo.changes | 6 ------ cairo.spec | 3 --- 3 files changed, 27 deletions(-) delete mode 100644 cairo-active_edges.patch diff --git a/cairo-active_edges.patch b/cairo-active_edges.patch deleted file mode 100644 index 5421f95..0000000 --- a/cairo-active_edges.patch +++ /dev/null @@ -1,18 +0,0 @@ -https://bugs.freedesktop.org/show_bug.cgi?id=59098 ---- cairo-1.14.2.orig/src/cairo-polygon-intersect.c -+++ cairo-1.14.2/src/cairo-polygon-intersect.c -@@ -1236,11 +1236,10 @@ active_edges (cairo_bo_edge_t *left, - edges_end (right, top, polygon); - - winding[right->a_or_b] += right->edge.dir; -- if (is_zero (winding)) { -- if (right->next == NULL || -- ! edges_colinear (right, right->next)) -+ if (!right->next) -+ return; -+ if (is_zero (winding) && ! edges_colinear (right, right->next)) - break; -- } - - right = right->next; - } while (1); diff --git a/cairo.changes b/cairo.changes index 86eeeb4..a27fe54 100644 --- a/cairo.changes +++ b/cairo.changes @@ -1,9 +1,3 @@ -------------------------------------------------------------------- -Sat Oct 24 12:24:48 UTC 2015 - olaf@aepfle.de - -- Add cairo-active_edges.patch: Fix another segfault in - active_edges (fdo#59098). - ------------------------------------------------------------------- Sat May 16 10:42:31 CEST 2015 - ro@suse.de diff --git a/cairo.spec b/cairo.spec index f5ca131..3c704cd 100644 --- a/cairo.spec +++ b/cairo.spec @@ -33,8 +33,6 @@ Patch0: cairo-modules-no-version.patch Patch1: cairo-render-thin-lines.patch # PATCH-FIX-UPSTREAM cairo-xlib-endianness.patch fdo#63461 bnc#882951 fcrozat@suse.com -- Fix crash when client and server have different endianness Patch2: cairo-xlib-endianness.patch -# PATCH-FIX-UPSTREAM cairo-active_edges.patch fdo#59098 olaf@aepfle.de -- segfault in cairo-polygon-intersect.c: active_edges -Patch59098: cairo-active_edges.patch BuildRequires: gtk-doc # Needed by patch0 BuildRequires: libtool @@ -146,7 +144,6 @@ cairo. # fix_for_fdo77298.patch %patch1 -p1 %patch2 -p1 -%patch59098 -p1 %build # Needed by patch0 and patch1 From 873790079411b639c6fe70f1a3419a4409fb6d0de3ad82e0f06611f8d227513a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Mon, 2 Nov 2015 18:17:23 +0000 Subject: [PATCH 4/4] Accepting request 342114 from home:Zaitor:branches:GNOME:Factory New stable bugfix rel, not buildtested, so please wait for the obs. OBS-URL: https://build.opensuse.org/request/show/342114 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=100 --- cairo-1.14.2.tar.xz | 3 --- cairo-1.14.4.tar.xz | 3 +++ cairo.changes | 38 ++++++++++++++++++++++++++++++++++++++ cairo.spec | 2 +- 4 files changed, 42 insertions(+), 4 deletions(-) delete mode 100644 cairo-1.14.2.tar.xz create mode 100644 cairo-1.14.4.tar.xz diff --git a/cairo-1.14.2.tar.xz b/cairo-1.14.2.tar.xz deleted file mode 100644 index ccf30a6..0000000 --- a/cairo-1.14.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c919d999ddb1bbbecd4bbe65299ca2abd2079c7e13d224577895afa7005ecceb -size 35376404 diff --git a/cairo-1.14.4.tar.xz b/cairo-1.14.4.tar.xz new file mode 100644 index 0000000..5e513b4 --- /dev/null +++ b/cairo-1.14.4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6ec9c7c844db9ec011f0d66b57ef590c45adf55393d1fc249003512522ee716 +size 36040204 diff --git a/cairo.changes b/cairo.changes index a27fe54..b7a2670 100644 --- a/cairo.changes +++ b/cairo.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Mon Nov 2 15:11:39 UTC 2015 - zaitor@opensuse.org + +- Update to version 1.14.4: + + Avoid appending empty slots to user data arrays. Fixes a memory + consumption regression since commit 9341c254a. + + Return a better error (file-not-found) when setting up pango on + devices where the font files don't have read permissions. + + Fix regression in the font size of canvas text in Inkscape when + compiled with the Quartz backend (fdo#84324). + + Fix _cairo_gl_shader_bind_matrix() to maintain compatibility + with OpenGL ES 2.0. Manually transpose the matrix. + + Fix incorrect font descriptor conversion when the font matrix + yy is negative (fdo#90538). + + Fix crash when using a complex path for clip and stroke due to + discarding the intersection exactly at the top edge + (fdo#74779). + + Fix cairo_get_locale_decimal_point() on Android. + + Fix compilation problem on AIX due to conflicting usage of + symbol 'jmpbuf' (fdo#89339). + + Fix broken rendering with XCB due to snapshotting of uploaded + part of surfaces (fdo#67505). + + Fix loss of alpha when copying a mask for a cairo recording + surface, resulting in a double copy (fdo#73038, fdo#73901). + + Fix incorrect recording of certain paths with script surfaces + (fdo#91054). + + Fix typo in definition of MAYBE_WARN in configure script + (fdo#89750). + + Fix use of filename variable after it's been freed (fdo#91206). + + Fix out of bounds access when printing pattern (fdo#91266). + + Fix incorrect size calculation in glyph cache unlocking for + Cairo GL compositor (fdo#91321). + + Fix memory leak in _cairo_gl_pattern_texture_setup() + (fdo#91537). + + Fix transparent images in win32-print (fdo#91835). + + Fix _put_shm_image_boxes and _put_image_boxes when no SHM + available with XCB. + ------------------------------------------------------------------- Sat May 16 10:42:31 CEST 2015 - ro@suse.de diff --git a/cairo.spec b/cairo.spec index 3c704cd..e1f29c0 100644 --- a/cairo.spec +++ b/cairo.spec @@ -19,7 +19,7 @@ %define build_xcb_backend 1 %define build_gl_backend 1 Name: cairo -Version: 1.14.2 +Version: 1.14.4 Release: 0 Summary: Vector Graphics Library with Cross-Device Output Support License: LGPL-2.1+ or MPL-1.1