static void ns_glyph_metrics (struct nsfont_info *font_info,
unsigned char block);
+#define INVALID_GLYPH 0xFFFF
/* ==========================================================================
static Lisp_Object
nsfont_get_cache (struct frame *frame)
{
- Display_Info *dpyinfo = FRAME_NS_DISPLAY_INFO (frame);
+ Display_Info *dpyinfo = FRAME_DISPLAY_INFO (frame);
return (dpyinfo->name_list_element);
}
font->underline_thickness = lrint (font_info->underwidth);
font->props[FONT_NAME_INDEX] = Ffont_xlfd_name (font_object, Qnil);
- font->props[FONT_FULLNAME_INDEX] =
- make_unibyte_string (font_info->name, strlen (font_info->name));
+ font->props[FONT_FULLNAME_INDEX] = build_unibyte_string (font_info->name);
}
unblock_input ();
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;
}
: FRAME_BACKGROUND_COLOR (s->f)) set];
else
{
- struct ns_display_info *dpyinfo = FRAME_NS_DISPLAY_INFO (s->f);
+ struct ns_display_info *dpyinfo = FRAME_DISPLAY_INFO (s->f);
[[dpyinfo->bitmaps[face->stipple-1].img stippleMask] set];
}
NSRectFill (br);
#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;
}
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;