# HG changeset patch # User Jason Rumney # Date 1212080220 0 # Node ID 68cbfe0d72fc1dab572bf44941ed181b2ae8db2d # Parent be7d86474ead93368558130ae0f4f5807826edf5 (add_font_entity_to_list): Allow non-opentype truetype fonts back in the uniscribe backend, but disallow any font that has no unicode subrange support. diff -r be7d86474ead -r 68cbfe0d72fc src/w32font.c --- a/src/w32font.c Thu May 29 16:54:53 2008 +0000 +++ b/src/w32font.c Thu May 29 16:57:00 2008 +0000 @@ -1321,7 +1321,14 @@ Lisp_Object backend = match_data->opentype_only ? Quniscribe : Qgdi; if ((!match_data->opentype_only - || (physical_font->ntmTm.ntmFlags & NTMFLAGS_OPENTYPE)) + || (((physical_font->ntmTm.ntmFlags & NTMFLAGS_OPENTYPE) + || (font_type & TRUETYPE_FONTTYPE)) + /* For the uniscribe backend, only consider fonts that claim + to cover at least some part of Unicode. */ + && (physical_font->ntmFontSig.fsUsb[3] + || physical_font->ntmFontSig.fsUsb[2] + || physical_font->ntmFontSig.fsUsb[1] + || (physical_font->ntmFontSig.fsUsb[0] & 0x3fffffff)))) && logfonts_match (&logical_font->elfLogFont, &match_data->pattern) && font_matches_spec (font_type, physical_font, match_data->orig_font_spec, backend,