Alexandre Julliard : gdi32: Disable the freetype mmap sharing on Mac
OS.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Dec 8 06:07:00 CST 2006
Module: wine
Branch: master
Commit: ae9f68dec91cd6ac66a99dc62d69dc53eaf910d0
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ae9f68dec91cd6ac66a99dc62d69dc53eaf910d0
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Dec 8 12:14:13 2006 +0100
gdi32: Disable the freetype mmap sharing on Mac OS.
---
dlls/gdi32/freetype.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index 6301a5f..ab4a266 100644
--- a/dlls/gdi32/freetype.c
+++ b/dlls/gdi32/freetype.c
@@ -1887,6 +1887,7 @@ static LONG calc_ppem_for_height(FT_Face
static struct font_mapping *map_font( const char *name )
{
+#ifndef __APPLE__ /* Mac OS fonts use resource forks, we can't simply mmap them */
struct font_mapping *mapping;
struct stat st;
int fd;
@@ -1923,6 +1924,7 @@ static struct font_mapping *map_font( co
error:
close( fd );
+#endif
return NULL;
}
@@ -1945,13 +1947,11 @@ static FT_Face OpenFontFile(GdiFont *fon
TRACE("%s, %ld, %d x %d\n", debugstr_a(file), face_index, width, height);
- if (!(font->mapping = map_font( file )))
- {
- WARN("failed to map %s\n", debugstr_a(file));
- return 0;
- }
+ if ((font->mapping = map_font( file )))
+ err = pFT_New_Memory_Face(library, font->mapping->data, font->mapping->size, face_index, &ft_face);
+ else
+ err = pFT_New_Face(library, file, face_index, &ft_face);
- err = pFT_New_Memory_Face(library, font->mapping->data, font->mapping->size, face_index, &ft_face);
if(err) {
ERR("FT_New_Face rets %d\n", err);
return 0;
More information about the wine-cvs
mailing list