]> git.eshelyaron.com Git - emacs.git/commitdiff
* nsfont.m (INVALID_GLYPH): New define.
authorJan Djärv <jan.h.d@swipnet.se>
Tue, 3 Sep 2013 06:56:25 +0000 (08:56 +0200)
committerJan Djärv <jan.h.d@swipnet.se>
Tue, 3 Sep 2013 06:56:25 +0000 (08:56 +0200)
(nsfont_encode_char): Use INVALID_GLYPH.
(ns_uni_to_glyphs): Ditto, check for NSNullGlyph.

Fixes: debbugs:15138
src/ChangeLog
src/nsfont.m

index d2e80ace3e4c5943db2df8a216fb102f1cc6ab00..caba3eb96d471a422dc9dd54d64087a070012dc4 100644 (file)
@@ -1,3 +1,9 @@
+2013-09-03  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsfont.m (INVALID_GLYPH): New define.
+       (nsfont_encode_char): Use INVALID_GLYPH.
+       (ns_uni_to_glyphs): Ditto, check for NSNullGlyph (Bug#15138).
+
 2013-09-02  Dmitry Antipov  <dmantipov@yandex.ru>
 
        * xterm.c (x_last_mouse_movement_time): Revert last change.
index 235150e3aef16306725b90b780fffebae51ee826..e1c7d32dde037ec6570304038f1558e3459b9be5 100644 (file)
@@ -61,6 +61,7 @@ static void ns_uni_to_glyphs (struct nsfont_info *font_info,
 static void ns_glyph_metrics (struct nsfont_info *font_info,
                               unsigned char block);
 
+#define INVALID_GLYPH 0xFFFF
 
 /* ==========================================================================
 
@@ -981,7 +982,7 @@ nsfont_encode_char (struct font *font, int c)
     ns_uni_to_glyphs (font_info, high);
 
   g = font_info->glyphs[high][low];
-  return g == 0xFFFF ? FONT_INVALID_CODE : g;
+  return g == INVALID_GLYPH ? FONT_INVALID_CODE : g;
 }
 
 
@@ -1354,8 +1355,8 @@ ns_uni_to_glyphs (struct nsfont_info *font_info, unsigned char block)
 #else
         g = glyphStorage->cglyphs[i];
         /* TODO: is this a good check?  maybe need to use coveredChars.. */
-        if (g > numGlyphs)
-          g = 0xFFFF; /* hopefully unused... */
+        if (g > numGlyphs || g == NSNullGlyph)
+          g = INVALID_GLYPH; /* hopefully unused... */
 #endif
         *glyphs = g;
       }
@@ -1483,7 +1484,7 @@ ns_glyph_metrics (struct nsfont_info *font_info, unsigned char block)
         characterIndex: (NSUInteger)charIndex
 {
   len = glyphIndex+length;
-  for (i =glyphIndex; i<len; i++)
+  for (i =glyphIndex; i<len; i++) 
     cglyphs[i] = glyphs[i-glyphIndex];
   if (len > maxGlyph)
     maxGlyph = len;