emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/ftfont.c,v


From: Kenichi Handa
Subject: [Emacs-diffs] Changes to emacs/src/ftfont.c,v
Date: Sat, 31 May 2008 02:27:47 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Kenichi Handa <handa>   08/05/31 02:27:46

Index: ftfont.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/ftfont.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- ftfont.c    28 May 2008 11:45:29 -0000      1.16
+++ ftfont.c    31 May 2008 02:27:46 -0000      1.17
@@ -1707,6 +1707,7 @@
 ftfont_font_format (FcPattern *pattern)
 {
   FcChar8 *str;
+  int len;
 
 #ifdef FC_FONTFORMAT
   if (FcPatternGetString (pattern, FC_FONTFORMAT, 0, &str) != FcResultMatch)
@@ -1722,14 +1723,19 @@
 #else  /* not FC_FONTFORMAT */
   if (FcPatternGetString (pattern, FC_FILE, 0, &str) != FcResultMatch)
     return Qnil;
-  if (strcasestr ((char *) str, ".ttf") == 0)
+  len = strlen ((char *) str);
+  if (len >= 4)
+    {
+      str += len - 4;
+      if (xstrcasecmp ((char *) str, ".ttf") == 0)
     return intern ("truetype");
-  if (strcasestr ((char *) str, "pfb") == 0)
+      if (xstrcasecmp ((char *) str, "pfb") == 0)
     return intern ("type1");
-  if (strcasestr ((char *) str, "pcf") == 0)  
+      if (xstrcasecmp ((char *) str, "pcf") == 0)  
     return intern ("pcf");
-  if (strcasestr ((char *) str, "bdf") == 0)  
+      if (xstrcasecmp ((char *) str, "bdf") == 0)  
     return intern ("bdf");
+    }
 #endif /* not FC_FONTFORMAT */
   return intern ("unknown");
 }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]