changeset 109493:f69d90096f33

font.c (Ffont_shape_gstring): Terminate GSTRING by nil if the number of glyphs gets smaller than the original length.
author Kenichi Handa <handa@etlken>
date Mon, 26 Jul 2010 13:28:02 +0900
parents 2bd8f25ebb95
children 197e874deb67
files src/ChangeLog src/font.c
diffstat 2 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri Jul 23 15:50:31 2010 +0900
+++ b/src/ChangeLog	Mon Jul 26 13:28:02 2010 +0900
@@ -1,3 +1,8 @@
+2010-07-26  Kenichi Handa  <handa@m17n.org>
+
+	* font.c (Ffont_shape_gstring): Terminate GSTRING by nil if the
+	number of glyphs gets smaller than the original length.
+
 2010-07-20  Juanma Barranquero  <lekktu@gmail.com>
 
 	* alloc.c (emacs_blocked_free, emacs_blocked_malloc)
--- a/src/font.c	Fri Jul 23 15:50:31 2010 +0900
+++ b/src/font.c	Mon Jul 26 13:28:02 2010 +0900
@@ -4492,6 +4492,8 @@
     }
   if (i == 3 || XINT (n) == 0)
     return Qnil;
+  if (XINT (n) < LGSTRING_GLYPH_LEN (gstring))
+    LGSTRING_SET_GLYPH (gstring, XINT (n), Qnil);
 
   glyph = LGSTRING_GLYPH (gstring, 0);
   from = LGLYPH_FROM (glyph);