diff options
Diffstat (limited to 'pango/break.c')
-rw-r--r-- | pango/break.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/pango/break.c b/pango/break.c index 35b947c0..6b8e5c01 100644 --- a/pango/break.c +++ b/pango/break.c @@ -362,12 +362,15 @@ pango_default_break (const gchar *text, case G_UNICODE_PARAGRAPH_SEPARATOR: attrs[i].is_white = TRUE; break; - default: + case G_UNICODE_CONTROL: if (wc == '\t' || wc == '\n' || wc == '\r' || wc == '\f') attrs[i].is_white = TRUE; else attrs[i].is_white = FALSE; break; + default: + attrs[i].is_white = FALSE; + break; } /* Just few spaces have variable width. So explicitly mark them. @@ -502,9 +505,7 @@ pango_default_break (const gchar *text, else if (GB_type == GB_InHangulSyllable) is_grapheme_boundary = FALSE; /* Rules GB6, GB7, GB8 */ else if (GB_type == GB_Extend) - { - is_grapheme_boundary = FALSE; /* Rule GB9 */ - } + is_grapheme_boundary = FALSE; /* Rule GB9 */ else if (GB_type == GB_ZWJ) is_grapheme_boundary = FALSE; /* Rule GB9 */ else if (GB_type == GB_SpacingMark) @@ -641,14 +642,12 @@ pango_default_break (const gchar *text, if (wc >= 0x24B6 && wc <= 0x24E9) /* Other_Alphabetic */ goto Alphabetic; - if (G_UNLIKELY(wc >=0x1F1E6 && wc <=0x1F1FF)) + if (G_UNLIKELY(wc >= 0x1F1E6 && wc <= 0x1F1FF)) { - if (prev_WB_type == WB_RI_Odd) - WB_type = WB_RI_Even; - else if (prev_WB_type == WB_RI_Even) - WB_type = WB_RI_Odd; - else - WB_type = WB_RI_Odd; + if (prev_WB_type == WB_RI_Odd) + WB_type = WB_RI_Even; + else + WB_type = WB_RI_Odd; } break; @@ -1563,7 +1562,6 @@ pango_default_break (const gchar *text, attrs[i].is_line_break = TRUE; /* Rule LB3 */ attrs[0].is_line_break = FALSE; /* Rule LB2 */ - } static gboolean |