diff options
| author | Kenichi Handa | 2008-05-31 02:29:58 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2008-05-31 02:29:58 +0000 |
| commit | 719b3d63d338d1b31e042ca1c8fad8b3d402c78d (patch) | |
| tree | df42c96628ad346af463db50b03381a37e022922 /src | |
| parent | 10498e1c2c5ade6553dfe5b19c0f79f18a613eac (diff) | |
| download | emacs-719b3d63d338d1b31e042ca1c8fad8b3d402c78d.tar.gz emacs-719b3d63d338d1b31e042ca1c8fad8b3d402c78d.zip | |
(ftfont_font_format): Don't use strcasestr.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/ftfont.c | 22 |
2 files changed, 18 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 0c1125c9e05..030c2a186bf 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2008-05-31 Kenichi Handa <handa@m17n.org> | ||
| 2 | |||
| 3 | * ftfont.c (ftfont_font_format): Don't use strcasestr. | ||
| 4 | |||
| 1 | 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca> | 5 | 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 6 | ||
| 3 | * chartab.c (Foptimize_char_table, optimize_sub_char_table): | 7 | * chartab.c (Foptimize_char_table, optimize_sub_char_table): |
diff --git a/src/ftfont.c b/src/ftfont.c index 574b7841067..bc8c4406257 100644 --- a/src/ftfont.c +++ b/src/ftfont.c | |||
| @@ -1707,6 +1707,7 @@ Lisp_Object | |||
| 1707 | ftfont_font_format (FcPattern *pattern) | 1707 | ftfont_font_format (FcPattern *pattern) |
| 1708 | { | 1708 | { |
| 1709 | FcChar8 *str; | 1709 | FcChar8 *str; |
| 1710 | int len; | ||
| 1710 | 1711 | ||
| 1711 | #ifdef FC_FONTFORMAT | 1712 | #ifdef FC_FONTFORMAT |
| 1712 | if (FcPatternGetString (pattern, FC_FONTFORMAT, 0, &str) != FcResultMatch) | 1713 | if (FcPatternGetString (pattern, FC_FONTFORMAT, 0, &str) != FcResultMatch) |
| @@ -1722,14 +1723,19 @@ ftfont_font_format (FcPattern *pattern) | |||
| 1722 | #else /* not FC_FONTFORMAT */ | 1723 | #else /* not FC_FONTFORMAT */ |
| 1723 | if (FcPatternGetString (pattern, FC_FILE, 0, &str) != FcResultMatch) | 1724 | if (FcPatternGetString (pattern, FC_FILE, 0, &str) != FcResultMatch) |
| 1724 | return Qnil; | 1725 | return Qnil; |
| 1725 | if (strcasestr ((char *) str, ".ttf") == 0) | 1726 | len = strlen ((char *) str); |
| 1726 | return intern ("truetype"); | 1727 | if (len >= 4) |
| 1727 | if (strcasestr ((char *) str, "pfb") == 0) | 1728 | { |
| 1728 | return intern ("type1"); | 1729 | str += len - 4; |
| 1729 | if (strcasestr ((char *) str, "pcf") == 0) | 1730 | if (xstrcasecmp ((char *) str, ".ttf") == 0) |
| 1730 | return intern ("pcf"); | 1731 | return intern ("truetype"); |
| 1731 | if (strcasestr ((char *) str, "bdf") == 0) | 1732 | if (xstrcasecmp ((char *) str, "pfb") == 0) |
| 1732 | return intern ("bdf"); | 1733 | return intern ("type1"); |
| 1734 | if (xstrcasecmp ((char *) str, "pcf") == 0) | ||
| 1735 | return intern ("pcf"); | ||
| 1736 | if (xstrcasecmp ((char *) str, "bdf") == 0) | ||
| 1737 | return intern ("bdf"); | ||
| 1738 | } | ||
| 1733 | #endif /* not FC_FONTFORMAT */ | 1739 | #endif /* not FC_FONTFORMAT */ |
| 1734 | return intern ("unknown"); | 1740 | return intern ("unknown"); |
| 1735 | } | 1741 | } |