emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r110049: font.c (Ffont_shape_gstring)


From: Kenichi Handa
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r110049: font.c (Ffont_shape_gstring): Fix previous change; GLYPHs may not covert the last few charactes.
Date: Mon, 17 Sep 2012 01:20:12 +0900
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110049 [merge]
committer: Kenichi Handa <address@hidden>
branch nick: trunk
timestamp: Mon 2012-09-17 01:20:12 +0900
message:
  font.c (Ffont_shape_gstring): Fix previous change; GLYPHs may not covert the 
last few charactes.
modified:
  src/ChangeLog
  src/font.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-09-16 11:47:45 +0000
+++ b/src/ChangeLog     2012-09-16 16:17:31 +0000
@@ -1,3 +1,8 @@
+2012-09-17  Kenichi Handa  <address@hidden>
+
+       * font.c (Ffont_shape_gstring): Fix previous change; GLYPHs may
+       not covert the last few charactes.
+
 2012-09-16  Kenichi Handa  <address@hidden>
 
        * font.c (Ffont_shape_gstring): Don't adjust grapheme cluster

=== modified file 'src/font.c'
--- a/src/font.c        2012-09-16 11:47:45 +0000
+++ b/src/font.c        2012-09-16 16:17:31 +0000
@@ -4330,10 +4330,10 @@
     LGSTRING_SET_GLYPH (gstring, XINT (n), Qnil);
 
   /* Check FROM_IDX and TO_IDX of each GLYPH in GSTRING to assure that
-     GLYPHS covers all characters in GSTRING.  More formally, provided
-     that NCHARS is the number of characters in GSTRING, N is the
-     number of glyphs, and GLYPHS[i] is the ith glyph, FROM_IDX and
-     TO_IDX of each glyph must satisfy these conditions:
+     GLYPHS covers all characters (except for the last few ones) in
+     GSTRING.  More formally, provided that NCHARS is the number of
+     characters in GSTRING and GLYPHS[i] is the ith glyph, FROM_IDX
+     and TO_IDX of each glyph must satisfy these conditions:
 
        GLYPHS[0].FROM_IDX == 0
        GLYPHS[i].FROM_IDX <= GLYPHS[i].TO_IDX
@@ -4342,8 +4342,7 @@
          GLYPHS[i].TO_IDX == GLYPHS[i-1].TO_IDX
        else
          ;; Be sure to cover all characters.
-         GLYPHS[i].FROM_IDX == GLYPHS[i-1].TO_IDX + 1
-       GLYPHS[N-1].TO_IDX == NCHARS - 1 */
+         GLYPHS[i].FROM_IDX == GLYPHS[i-1].TO_IDX + 1 */
   glyph = LGSTRING_GLYPH (gstring, 0);
   from = LGLYPH_FROM (glyph);
   to = LGLYPH_TO (glyph);
@@ -4362,8 +4361,6 @@
       from = LGLYPH_FROM (glyph);
       to = LGLYPH_TO (glyph);
     }
-  if (to != LGSTRING_CHAR_LEN (gstring) - 1)
-    goto shaper_error;
   return composition_gstring_put_cache (gstring, XINT (n));
 
  shaper_error:


reply via email to

[Prev in Thread] Current Thread [Next in Thread]