summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--pango/pango-context.c17
2 files changed, 12 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index 286d7cd5..7a3d08d1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2007-02-16 Behdad Esfahbod <behdad@gnome.org>
+ Bug 355987 – choosing font/shaper for spaces breaks Arabic runs on
+ spaces
+
+ * pango/pango-context.c (itemize_state_process_run): Don't choose
+ shaper for ASCII space char.
+
+2007-02-16 Behdad Esfahbod <behdad@gnome.org>
+
Bug 407087 – autogen.sh wants automake-1.7
* autogen.sh: Require automake 1.9, like configure.in does.
diff --git a/pango/pango-context.c b/pango/pango-context.c
index bed0021e..8ddc7249 100644
--- a/pango/pango-context.c
+++ b/pango/pango-context.c
@@ -1311,24 +1311,15 @@ itemize_state_process_run (ItemizeState *state)
/* We don't want space characters to affect font selection; in general,
* it's always wrong to select a font just to render a space. But until
* we have a better solution, choosing a font for spaces seems to work
- * better.
- *
- * The exception of U+3000 (IDEOGRAPHIC SPACE) here is because we
- * want to choose an ideographic space that matches ideographic text
- * in cell width. Even if we were emulating missing spaces, an
- * emulated ideographic space for the primary font wouldn't be the
- * right size.
+ * better. However, all fonts are assumed to cover ASCII space, so that
+ * one is an exception. See bug #355987.
*
* The exception of PrivateUse and Unassigned characters is necessary
* to be able to render any of them. (for private or being encoded
* scripts, etc.)
*/
- /*
- if (G_UNLIKELY (!g_unichar_isgraph (wc) && wc != 0x3000 &&
- g_unichar_type (wc) != G_UNICODE_PRIVATE_USE &&
- g_unichar_type (wc) != G_UNICODE_UNASSIGNED))
- */
- if (G_UNLIKELY (!g_unichar_isprint (wc) &&
+ if (wc == 0x0020 ||
+ G_UNLIKELY (!g_unichar_isprint (wc) &&
g_unichar_type (wc) != G_UNICODE_PRIVATE_USE &&
g_unichar_type (wc) != G_UNICODE_UNASSIGNED))
{