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
This commit is contained in:
Dominique Leuenberger 2015-10-28 15:41:51 +00:00 committed by Git OBS Bridge
parent 97465aefe8
commit 3ed4c8a024
3 changed files with 27 additions and 0 deletions

18
cairo-active_edges.patch Normal file
View File

@ -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);

View File

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

View File

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