Kusanagi Kouichi : gdi32: Initialize font signature of "System" font link.
Alexandre Julliard
julliard at winehq.org
Tue Feb 21 14:27:50 CST 2012
Module: wine
Branch: master
Commit: 4dc04ae867155ba734c2a8edbe816c31e09703a1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4dc04ae867155ba734c2a8edbe816c31e09703a1
Author: Kusanagi Kouichi <slash at ac.auone-net.jp>
Date: Tue Feb 21 20:14:18 2012 +0900
gdi32: Initialize font signature of "System" font link.
---
dlls/gdi32/freetype.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index ea0da85..8a0c096 100644
--- a/dlls/gdi32/freetype.c
+++ b/dlls/gdi32/freetype.c
@@ -2212,6 +2212,7 @@ skip_internal:
system_font_link = HeapAlloc(GetProcessHeap(), 0, sizeof(*system_font_link));
system_font_link->font_name = strdupW(System);
list_init(&system_font_link->links);
+ memset(&fs, 0, sizeof(fs));
face = find_face_from_filename(tahoma_ttf, Tahoma);
if(face)
@@ -2219,6 +2220,8 @@ skip_internal:
child_font = HeapAlloc(GetProcessHeap(), 0, sizeof(*child_font));
child_font->face = face;
child_font->font = NULL;
+ fs.fsCsb[0] |= face->fs.fsCsb[0];
+ fs.fsCsb[1] |= face->fs.fsCsb[1];
TRACE("Found Tahoma in %s index %ld\n", child_font->face->file, child_font->face->face_index);
list_add_tail(&system_font_link->links, &child_font->entry);
}
@@ -2233,11 +2236,21 @@ skip_internal:
new_child = HeapAlloc(GetProcessHeap(), 0, sizeof(*new_child));
new_child->face = font_link_entry->face;
new_child->font = NULL;
+ fs.fsCsb[0] |= font_link_entry->face->fs.fsCsb[0];
+ fs.fsCsb[1] |= font_link_entry->face->fs.fsCsb[1];
list_add_tail(&system_font_link->links, &new_child->entry);
}
break;
}
}
+ family = find_family_from_name(system_font_link->font_name);
+ if(family)
+ {
+ LIST_FOR_EACH_ENTRY(face, &family->faces, Face, entry)
+ {
+ face->fs_links = fs;
+ }
+ }
list_add_tail(&system_links, &system_font_link->entry);
return ret;
}
More information about the wine-cvs
mailing list