Browse Source

pango update version

Signed-off-by: basebuilder_pel7x64builder0 <basebuilder@powerel.org>
master
basebuilder_pel7x64builder0 3 years ago
parent
commit
448b6f47d9
  1. 29
      SOURCES/pango-fixes-bidi-crash.patch
  2. 31
      SOURCES/pango-fixes-get-variations-crash.patch
  3. 1079
      SPECS/pango.spec

29
SOURCES/pango-fixes-bidi-crash.patch

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
commit 490f8979a260c16b1df055eab386345da18a2d54
Author: Matthias Clasen <mclasen@redhat.com>
Date: Wed Jul 10 20:26:23 2019 -0400

bidi: Be safer against bad input
Don't run off the end of an array that we
allocated to certain length.
Closes: https://gitlab.gnome.org/GNOME/pango/issues/342

diff --git a/pango/pango-bidi-type.c b/pango/pango-bidi-type.c
index 3e46b66c..5c02dbbb 100644
--- a/pango/pango-bidi-type.c
+++ b/pango/pango-bidi-type.c
@@ -181,8 +181,11 @@ pango_log2vis_get_embedding_levels (const gchar *text,
for (i = 0, p = text; p < text + length; p = g_utf8_next_char(p), i++)
{
gunichar ch = g_utf8_get_char (p);
- FriBidiCharType char_type;
- char_type = fribidi_get_bidi_type (ch);
+ FriBidiCharType char_type = fribidi_get_bidi_type (ch);
+
+ if (i == n_chars)
+ break;
+
bidi_types[i] = char_type;
ored_types |= char_type;
if (FRIBIDI_IS_STRONG (char_type))

31
SOURCES/pango-fixes-get-variations-crash.patch

@ -0,0 +1,31 @@ @@ -0,0 +1,31 @@
commit ad92e199f221499c19f22dce7a16e7d770ad3ae7
Author: Carsten Pfeiffer <carsten.pfeiffer@gebit.de>
Date: Fri Aug 10 16:06:20 2018 +0200

Fix crash in pango_fc_font_key_get_variations() when key is null

diff --git a/pango/pangofc-shape.c b/pango/pangofc-shape.c
index a59ca67c..53269d73 100644
--- a/pango/pangofc-shape.c
+++ b/pango/pangofc-shape.c
@@ -380,8 +380,10 @@ _pango_fc_shape (PangoFont *font,
fc_font->is_hinted ? ft_face->size->metrics.x_ppem : 0,
fc_font->is_hinted ? ft_face->size->metrics.y_ppem : 0);
- variations = pango_fc_font_key_get_variations (key);
- if (variations)
+ if (key)
+ {
+ variations = pango_fc_font_key_get_variations (key);
+ if (variations)
{
guint n_variations;
hb_variation_t *hb_variations;
@@ -391,6 +393,7 @@ _pango_fc_shape (PangoFont *font,
g_free (hb_variations);
}
+ }
hb_buffer = acquire_buffer (&free_buffer);

1079
SPECS/pango.spec

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save