Hi, This fix supercedes Rein Klazes fix, since MS_MAKE_TAG is used in other places. Ciao, Marcus Changelog: Use the correct byteorder for the freetype encoding tag. Index: dlls/gdi/freetype.c =================================================================== RCS file: /home/wine/wine/dlls/gdi/freetype.c,v retrieving revision 1.40 diff -u -r1.40 freetype.c --- dlls/gdi/freetype.c 15 Oct 2003 20:51:22 -0000 1.40 +++ dlls/gdi/freetype.c 26 Oct 2003 09:22:32 -0000 @@ -1249,17 +1249,24 @@ free_font( ret ); return 0; } + +#define WINE_FT_ENC_TAG( _x1, _x2, _x3, _x4 ) \ + ( ( (FT_ULong)_x1 << 24 ) | \ + ( (FT_ULong)_x2 << 16 ) | \ + ( (FT_ULong)_x3 << 8 ) | \ + (FT_ULong)_x4 ) if (ret->charset == SYMBOL_CHARSET && - !pFT_Select_Charmap(ret->ft_face, MS_MAKE_TAG('s','y','m','b'))) { + !pFT_Select_Charmap(ret->ft_face, WINE_FT_ENC_TAG('s','y','m','b'))) { /* No ops */ } - else if (!pFT_Select_Charmap(ret->ft_face, MS_MAKE_TAG('u','n','i','c'))) { + else if (!pFT_Select_Charmap(ret->ft_face, WINE_FT_ENC_TAG('u','n','i','c'))) { /* No ops */ } else { - pFT_Select_Charmap(ret->ft_face, MS_MAKE_TAG('a','r','m','n')); + pFT_Select_Charmap(ret->ft_face, WINE_FT_ENC_TAG('a','r','m','n')); } +#undef WINE_FT_ENC_TAG ret->orientation = lf.lfOrientation; ret->name = strdupW(family->FamilyName);