Hello community,

here is the log from the commit of package cairo for openSUSE:Factory checked 
in at 2018-04-27 15:59:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cairo (Old)
 and      /work/SRC/openSUSE:Factory/.cairo.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cairo"

Fri Apr 27 15:59:41 2018 rev:85 rq:600979 version:1.15.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/cairo/cairo.changes      2018-04-19 
15:25:24.217049416 +0200
+++ /work/SRC/openSUSE:Factory/.cairo.new/cairo.changes 2018-04-27 
15:59:46.787297613 +0200
@@ -1,0 +2,6 @@
+Tue Apr 24 21:00:53 UTC 2018 - [email protected]
+
+- Add cairo-fix-assertion-failure-in-freetype-backend.patch: Fix
+  assertion failure in the freetype backend (fdo#105746).
+
+-------------------------------------------------------------------

New:
----
  cairo-fix-assertion-failure-in-freetype-backend.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cairo.spec ++++++
--- /var/tmp/diff_new_pack.WKpGpq/_old  2018-04-27 15:59:48.175246669 +0200
+++ /var/tmp/diff_new_pack.WKpGpq/_new  2018-04-27 15:59:48.179246523 +0200
@@ -31,6 +31,8 @@
 Patch0:         cairo-xlib-endianness.patch
 # PATCH-FIX-UPSTREAM cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff 
[email protected] -- Fix segfault in get_bitmap_surface
 Patch1:         cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff
+# PATCH-FIX-UPSTREAM cairo-fix-assertion-failure-in-freetype-backend.patch 
fdo#105746 -- Fix assertion failure in the freetype backend
+Patch2:         cairo-fix-assertion-failure-in-freetype-backend.patch
 BuildRequires:  gtk-doc
 BuildRequires:  pkgconfig
 BuildRequires:  pkgconfig(fontconfig)
@@ -140,6 +142,7 @@
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 %configure \

++++++ cairo-fix-assertion-failure-in-freetype-backend.patch ++++++
>From 7554822dd0b52d33ec7898e81b59e97164b00142 Mon Sep 17 00:00:00 2001
From: Uli Schlachter <[email protected]>
Date: Sat, 21 Apr 2018 09:37:06 +0200
Subject: Fix assertion failure in the freetype backend

Fonts are kept in a hash table, so when creating a new font, the code
first checks the hash table for an already-existing entry and only then
is a new instance really created. There is an assert that checks that
the key used for the hash table lookup is the same as the instance that
is created later has, because otherwise the hash table was checked
incorrectly.

This assert failed in some conditions.

Fix this by fixing some places that initialised ft hash keys in a wrong
way.

Patch by Behdad Esfahbod and submitted via bugzilla.

Source: https://bugs.freedesktop.org/show_bug.cgi?id=105746#c4
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=105746
Signed-off-by: Uli Schlachter <[email protected]>
---
 src/cairo-ft-font.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c
index 79aef78..9b10708 100644
--- a/src/cairo-ft-font.c
+++ b/src/cairo-ft-font.c
@@ -445,7 +445,7 @@ _cairo_ft_unscaled_font_init (cairo_ft_unscaled_font_t 
*unscaled,
 
     if (from_face) {
        unscaled->from_face = TRUE;
-       _cairo_ft_unscaled_font_init_key (unscaled, TRUE, NULL, 
face->face_index, face);
+       _cairo_ft_unscaled_font_init_key (unscaled, TRUE, NULL, id, face);
 
 
         unscaled->have_color = FT_HAS_COLOR (face) != 0;
@@ -640,7 +640,7 @@ static cairo_status_t
 _cairo_ft_unscaled_font_create_from_face (FT_Face face,
                                          cairo_ft_unscaled_font_t **out)
 {
-    return _cairo_ft_unscaled_font_create_internal (TRUE, NULL, 0, face, out);
+    return _cairo_ft_unscaled_font_create_internal (TRUE, NULL, 
face->face_index, face, out);
 }
 
 static cairo_bool_t
-- 
cgit v1.1


Reply via email to