|
@@ -0,0 +1,38 @@
|
|
|
+From 490f8979a260c16b1df055eab386345da18a2d54 Mon Sep 17 00:00:00 2001
|
|
|
+From: Matthias Clasen <mclasen@redhat.com>
|
|
|
+Date: Wed, 10 Jul 2019 20:26:23 -0400
|
|
|
+Subject: [PATCH] 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
|
|
|
+
|
|
|
+Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/pango/commit/490f8979a260c16b1df055eab386345da18a2d54]
|
|
|
+CVE: CVE-2019-1010238
|
|
|
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
+---
|
|
|
+ pango/pango-bidi-type.c | 7 +++++--
|
|
|
+ 1 file changed, 5 insertions(+), 2 deletions(-)
|
|
|
+
|
|
|
+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))
|
|
|
+--
|
|
|
+2.21.0
|
|
|
+
|