From 074ae3638a47b294fb94b4c44088e3582d722196 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 31 Jul 2007 18:06:43 +0000 Subject: =?UTF-8?q?Bug=20462137=20=E2=80=93=20memory=20corruption=20in=20p?= =?UTF-8?q?ango=5Fdefault=5Fbreak?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2007-07-31 Behdad Esfahbod Bug 462137 – memory corruption in pango_default_break * pango/break.c (pango_default_break): Handle the case of an empty string correctly. svn path=/branches/pango-1-16/; revision=2386 --- ChangeLog | 7 +++++++ pango/break.c | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea4b1abe..fb4d1a3a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-07-31 Behdad Esfahbod + + Bug 462137 – memory corruption in pango_default_break + + * pango/break.c (pango_default_break): Handle the case of + an empty string correctly. + 2007-07-27 Behdad Esfahbod * === Released 1.16.5 === diff --git a/pango/break.c b/pango/break.c index 091d2541..da8209f0 100644 --- a/pango/break.c +++ b/pango/break.c @@ -558,7 +558,10 @@ pango_default_break (const gchar *text, prev_jamo = NO_JAMO; if (length == 0 || *text == '\0') - next_wc = PARAGRAPH_SEPARATOR; + { + next_wc = PARAGRAPH_SEPARATOR; + almost_done = TRUE; + } else next_wc = g_utf8_get_char (next); @@ -627,9 +630,6 @@ pango_default_break (const gchar *text, */ attrs[i].is_white = g_unichar_isspace (wc); - /* Just few spaces have variable width. So explicitly mark them. - */ - attrs[i].is_expandable_space = (0x0020 == wc || 0x00A0 == wc); /* ---- Cursor position breaks (Grapheme breaks) ---- */ -- cgit v1.2.1