diff options
| author | Jason Rumney | 2009-02-12 15:00:26 +0000 |
|---|---|---|
| committer | Jason Rumney | 2009-02-12 15:00:26 +0000 |
| commit | 631ea4fbf83f461ed1cc0ec40a5b3ad41b2aa810 (patch) | |
| tree | fcb7508250242458e787c781212ec9d5006f09f7 /src/w32font.c | |
| parent | cb4a3e4288f6f1e606fead5542f8be3973d5f0f9 (diff) | |
| download | emacs-631ea4fbf83f461ed1cc0ec40a5b3ad41b2aa810.tar.gz emacs-631ea4fbf83f461ed1cc0ec40a5b3ad41b2aa810.zip | |
(check_face_name): Check for fake helv. (Bug#2275)
(add_font_entity_to_list): Call check_face_name even when family
is unspecified.
Diffstat (limited to 'src/w32font.c')
| -rw-r--r-- | src/w32font.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/w32font.c b/src/w32font.c index d28483ada1e..848da7f464d 100644 --- a/src/w32font.c +++ b/src/w32font.c | |||
| @@ -1374,6 +1374,14 @@ check_face_name (font, full_name) | |||
| 1374 | _strlwr (full_iname); | 1374 | _strlwr (full_iname); |
| 1375 | return strstr ("helvetica", full_iname) != NULL; | 1375 | return strstr ("helvetica", full_iname) != NULL; |
| 1376 | } | 1376 | } |
| 1377 | /* Same for Helv. */ | ||
| 1378 | if (!xstrcasecmp (font->lfFaceName, "helv")) | ||
| 1379 | { | ||
| 1380 | strncpy (full_iname, full_name, LF_FULLFACESIZE); | ||
| 1381 | full_iname[LF_FULLFACESIZE] = 0; | ||
| 1382 | _strlwr (full_iname); | ||
| 1383 | return strstr ("helv", full_iname) != NULL; | ||
| 1384 | } | ||
| 1377 | 1385 | ||
| 1378 | /* Since Times is mapped to Times New Roman, a substring | 1386 | /* Since Times is mapped to Times New Roman, a substring |
| 1379 | match is not sufficient to filter out the bogus match. */ | 1387 | match is not sufficient to filter out the bogus match. */ |
| @@ -1437,9 +1445,8 @@ add_font_entity_to_list (logical_font, physical_font, font_type, lParam) | |||
| 1437 | logical_font->elfLogFont.lfFaceName)) | 1445 | logical_font->elfLogFont.lfFaceName)) |
| 1438 | /* Check for well known substitutions that mess things up in the | 1446 | /* Check for well known substitutions that mess things up in the |
| 1439 | presence of Type-1 fonts of the same name. */ | 1447 | presence of Type-1 fonts of the same name. */ |
| 1440 | || (match_data->pattern.lfFaceName[0] | 1448 | || (!check_face_name (&logical_font->elfLogFont, |
| 1441 | && !check_face_name (&logical_font->elfLogFont, | 1449 | logical_font->elfFullName))) |
| 1442 | logical_font->elfFullName))) | ||
| 1443 | return 1; | 1450 | return 1; |
| 1444 | 1451 | ||
| 1445 | /* Make a font entity for the font. */ | 1452 | /* Make a font entity for the font. */ |