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

Huw D M Davies h.davies1 at physics.ox.ac.uk
Fri Apr 28 06:51:36 CDT 2006


Huw Davies <huw at codeweavers.com>
gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .
FcPatternGetString( FC_FILE ) returns the whole path.  Go figure.
-- 
Huw Davies
huw at codeweavers.com
---

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

8ddfe6ad07e915df913f644d75f13e05e0bc03e3
diff --git a/dlls/gdi/freetype.c b/dlls/gdi/freetype.c
index 9546986..9a85801 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
@@ -1193,7 +1193,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 +1205,8 @@ LOAD_FUNCPTR(FcPatternGet);
     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
-- 
1.2.6




More information about the wine-patches mailing list