Huw Davies : gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .

Alexandre Julliard julliard at wine.codeweavers.com
Fri May 5 12:10:18 CDT 2006


Module: wine
Branch: refs/heads/master
Commit: 0a01f37eb874821a8a1bc281fd16d75609ebe133
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=0a01f37eb874821a8a1bc281fd16d75609ebe133

Author: Huw Davies <huw at codeweavers.com>
Date:   Fri Apr 28 12:51:36 2006 +0100

gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .

FcPatternGetString( FC_FILE ) returns the whole path.  Go figure.

---

 dlls/gdi/freetype.c |    9 +++------
 1 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/dlls/gdi/freetype.c b/dlls/gdi/freetype.c
index 1c923ec..4edac76 100644
--- a/dlls/gdi/freetype.c
+++ b/dlls/gdi/freetype.c
@@ -150,7 +150,7 @@ MAKE_FUNCPTR(FcObjectSetCreate);
 MAKE_FUNCPTR(FcObjectSetDestroy);
 MAKE_FUNCPTR(FcPatternCreate);
 MAKE_FUNCPTR(FcPatternDestroy);
-MAKE_FUNCPTR(FcPatternGet);
+MAKE_FUNCPTR(FcPatternGetString);
 #ifndef SONAME_LIBFONTCONFIG
 #define SONAME_LIBFONTCONFIG "libfontconfig.so"
 #endif
@@ -1173,7 +1173,6 @@ #ifdef HAVE_FONTCONFIG_FONTCONFIG_H
     FcPattern *pat;
     FcObjectSet *os;
     FcFontSet *fontset;
-    FcValue v;
     int i, len;
     const char *file, *ext;
 
@@ -1193,7 +1192,7 @@ LOAD_FUNCPTR(FcObjectSetCreate);
 LOAD_FUNCPTR(FcObjectSetDestroy);
 LOAD_FUNCPTR(FcPatternCreate);
 LOAD_FUNCPTR(FcPatternDestroy);
-LOAD_FUNCPTR(FcPatternGet);
+LOAD_FUNCPTR(FcPatternGetString);
 #undef LOAD_FUNCPTR
 
     if(!pFcInit()) return;
@@ -1205,10 +1204,8 @@ #undef LOAD_FUNCPTR
     fontset = pFcFontList(config, pat, os);
     if(!fontset) return;
     for(i = 0; i < fontset->nfont; i++) {
-        if(pFcPatternGet(fontset->fonts[i], FC_FILE, 0, &v) != FcResultMatch)
+        if(pFcPatternGetString(fontset->fonts[i], FC_FILE, 0, (FcChar8**)&file) != FcResultMatch)
             continue;
-        if(v.type != FcTypeString) continue;
-        file = (LPCSTR) v.u.s;
         TRACE("fontconfig: %s\n", file);
 
         /* We're just interested in OT/TT fonts for now, so this hack just




More information about the wine-cvs mailing list