Imported Upstream version 5.12.0.220

Former-commit-id: c477e03582759447177c6d4bf412cd2355aad476
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2018-04-24 09:31:23 +00:00
parent 8bd104cef2
commit 8fc30896db
1200 changed files with 29534 additions and 26161 deletions

View File

@@ -49,17 +49,15 @@ namespace System.Drawing {
nativeFontFamily = fntfamily;
}
internal void refreshName()
internal unsafe void refreshName()
{
StringBuilder sb;
if (nativeFontFamily == IntPtr.Zero)
return;
sb = new StringBuilder (GDIPlus.FACESIZE);
Status status = GDIPlus.GdipGetFamilyName (nativeFontFamily, sb, 0);
char* namePtr = stackalloc char[GDIPlus.FACESIZE];
Status status = GDIPlus.GdipGetFamilyName (nativeFontFamily, (IntPtr)namePtr, 0);
GDIPlus.CheckStatus (status);
name = sb.ToString();
name = Marshal.PtrToStringUni((IntPtr)namePtr);
}
~FontFamily()

View File

@@ -1560,7 +1560,7 @@ namespace System.Drawing
[MarshalAs(UnmanagedType.LPWStr)] string fName, IntPtr collection, out IntPtr fontFamily);
[DllImport (GdiPlus, CharSet=CharSet.Unicode)]
internal static extern Status GdipGetFamilyName(IntPtr family, StringBuilder name, int language);
internal static extern Status GdipGetFamilyName(IntPtr family, IntPtr name, int language);
[DllImport (GdiPlus)]
internal static extern Status GdipGetGenericFontFamilySansSerif (out IntPtr fontFamily);