0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 20:03:10 +02:00

Do not use FT_Glyph_Copy with NULL glyphs.

Contrary to the docs, it leaves garbage in *target.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23104 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
eugeni 2007-04-24 17:36:03 +00:00
parent 48adfb509c
commit 6f054a0afd

View File

@ -1239,7 +1239,8 @@ static void get_outline_glyph(int symbol, glyph_info_t* info, FT_Vector* advance
val = cache_find_glyph(&key); val = cache_find_glyph(&key);
if (val) { if (val) {
FT_Glyph_Copy(val->glyph, &info->glyph); FT_Glyph_Copy(val->glyph, &info->glyph);
FT_Glyph_Copy(val->outline_glyph, &info->outline_glyph); if (val->outline_glyph)
FT_Glyph_Copy(val->outline_glyph, &info->outline_glyph);
info->bbox = val->bbox_scaled; info->bbox = val->bbox_scaled;
info->advance.x = val->advance.x; info->advance.x = val->advance.x;
info->advance.y = val->advance.y; info->advance.y = val->advance.y;
@ -1260,8 +1261,10 @@ static void get_outline_glyph(int symbol, glyph_info_t* info, FT_Vector* advance
} }
} }
memset(&v, 0, sizeof(v));
FT_Glyph_Copy(info->glyph, &v.glyph); FT_Glyph_Copy(info->glyph, &v.glyph);
FT_Glyph_Copy(info->outline_glyph, &v.outline_glyph); if (info->outline_glyph)
FT_Glyph_Copy(info->outline_glyph, &v.outline_glyph);
v.advance = info->advance; v.advance = info->advance;
v.bbox_scaled = info->bbox; v.bbox_scaled = info->bbox;
cache_add_glyph(&key, &v); cache_add_glyph(&key, &v);