Accepting request 600750 from home:iznogood
- Add cairo-fix-assertion-failure-in-freetype-backend.patch: Fix assertion failure in the freetype backend (fdo#105746). Tweaked resub OBS-URL: https://build.opensuse.org/request/show/600750 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=137
This commit is contained in:
parent
eb6d048388
commit
8cebab01a2
51
cairo-fix-assertion-failure-in-freetype-backend.patch
Normal file
51
cairo-fix-assertion-failure-in-freetype-backend.patch
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
From 7554822dd0b52d33ec7898e81b59e97164b00142 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Uli Schlachter <psychon@znc.in>
|
||||||
|
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 <psychon@znc.in>
|
||||||
|
---
|
||||||
|
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
|
||||||
|
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 24 21:00:53 UTC 2018 - bjorn.lie@gmail.com
|
||||||
|
|
||||||
|
- Add cairo-fix-assertion-failure-in-freetype-backend.patch: Fix
|
||||||
|
assertion failure in the freetype backend (fdo#105746).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Apr 12 08:16:38 UTC 2018 - bjorn.lie@gmail.com
|
Thu Apr 12 08:16:38 UTC 2018 - bjorn.lie@gmail.com
|
||||||
|
|
||||||
|
@ -31,6 +31,8 @@ Source99: baselibs.conf
|
|||||||
Patch0: cairo-xlib-endianness.patch
|
Patch0: cairo-xlib-endianness.patch
|
||||||
# PATCH-FIX-UPSTREAM cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff alarrosa@suse.com -- Fix segfault in get_bitmap_surface
|
# PATCH-FIX-UPSTREAM cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff alarrosa@suse.com -- Fix segfault in get_bitmap_surface
|
||||||
Patch1: cairo-get_bitmap_surface-bsc1036789-CVE-2017-7475.diff
|
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: gtk-doc
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: pkgconfig(fontconfig)
|
BuildRequires: pkgconfig(fontconfig)
|
||||||
@ -140,6 +142,7 @@ cairo.
|
|||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
|
%patch2 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure \
|
%configure \
|
||||||
|
Loading…
Reference in New Issue
Block a user