Vincent Povirk : gdiplus: Fall back to Liberation Serif if Times New Roman is missing.

Alexandre Julliard julliard at winehq.org
Wed Mar 30 13:15:36 CDT 2011


Module: wine
Branch: master
Commit: ca5b5d2a05677b180f6dc5346fef5d2cf501bcdb
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=ca5b5d2a05677b180f6dc5346fef5d2cf501bcdb

Author: Vincent Povirk <vincent at codeweavers.com>
Date:   Tue Mar 29 13:11:53 2011 -0500

gdiplus: Fall back to Liberation Serif if Times New Roman is missing.

---

 dlls/gdiplus/font.c |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/font.c b/dlls/gdiplus/font.c
index e092b43..54accd7 100644
--- a/dlls/gdiplus/font.c
+++ b/dlls/gdiplus/font.c
@@ -837,12 +837,22 @@ GpStatus WINGDIPAPI GdipGetGenericFontFamilyMonospace(GpFontFamily **nativeFamil
 GpStatus WINGDIPAPI GdipGetGenericFontFamilySerif(GpFontFamily **nativeFamily)
 {
     static const WCHAR TimesNewRoman[] = {'T','i','m','e','s',' ','N','e','w',' ','R','o','m','a','n','\0'};
+    static const WCHAR LiberationSerif[] = {'L','i','b','e','r','a','t','i','o','n',' ','S','e','r','i','f','\0'};
+    GpStatus stat;
 
     TRACE("(%p)\n", nativeFamily);
 
     if (nativeFamily == NULL) return InvalidParameter;
 
-    return GdipCreateFontFamilyFromName(TimesNewRoman, NULL, nativeFamily);
+    stat = GdipCreateFontFamilyFromName(TimesNewRoman, NULL, nativeFamily);
+
+    if (stat == FontFamilyNotFound)
+        stat = GdipCreateFontFamilyFromName(LiberationSerif, NULL, nativeFamily);
+
+    if (stat == FontFamilyNotFound)
+        ERR("Missing 'Times New Roman' font\n");
+
+    return stat;
 }
 
 /*****************************************************************************




More information about the wine-cvs mailing list