Author: jgardou
Date: Fri Jun 18 21:12:29 2010
New Revision: 47800
URL:
http://svn.reactos.org/svn/reactos?rev=47800&view=rev
Log:
[GDI32]
- Use default LOGFONT in EnumFontFamilies.
+ ~3000 gdi32:font winetests
Modified:
branches/reactos-yarotows/dll/win32/gdi32/objects/font.c
Modified: branches/reactos-yarotows/dll/win32/gdi32/objects/font.c
URL:
http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/dll/win32/gdi3…
==============================================================================
--- branches/reactos-yarotows/dll/win32/gdi32/objects/font.c [iso-8859-1] (original)
+++ branches/reactos-yarotows/dll/win32/gdi32/objects/font.c [iso-8859-1] Fri Jun 18
21:12:29 2010
@@ -154,6 +154,7 @@
int i;
ENUMLOGFONTEXA EnumLogFontExA;
NEWTEXTMETRICEXA NewTextMetricExA;
+ LOGFONTW lfW;
Info = RtlAllocateHeap(GetProcessHeap(), 0,
INITIAL_FAMILY_COUNT * sizeof(FONTFAMILYINFO));
@@ -161,6 +162,15 @@
{
return 0;
}
+
+ if (!LogFont)
+ {
+ lfW.lfCharSet = DEFAULT_CHARSET;
+ lfW.lfPitchAndFamily = 0;
+ lfW.lfFaceName[0] = 0;
+ LogFont = &lfW;
+ }
+
FontFamilyCount = NtGdiGetFontFamilyInfo(Dc, LogFont, Info, INITIAL_FAMILY_COUNT);
if (FontFamilyCount < 0)
{
@@ -464,7 +474,7 @@
return 0;
}
- nSet = uCount;
+ nSet = uCount;
if ( nSet > lpResults->nGlyphs )
nSet = lpResults->nGlyphs;
@@ -522,7 +532,7 @@
iFirstChar,
(ULONG)(iLastChar - iFirstChar + 1),
(PWCHAR) NULL,
- 0,
+ 0,
(PVOID) pxBuffer);
}
@@ -688,7 +698,7 @@
wstr[0],
(ULONG) count,
(PWCHAR) wstr,
- GCW_NOFLOAT|GCW_WIN32,
+ GCW_NOFLOAT|GCW_WIN32,
(PVOID) lpBuffer);
HeapFree(GetProcessHeap(), 0, str);
@@ -772,7 +782,7 @@
return FALSE;
}
- ret = NtGdiGetCharABCWidthsW( hdc,
+ ret = NtGdiGetCharABCWidthsW( hdc,
wstr[0],
(ULONG)count,
(PWCHAR)wstr,
@@ -890,7 +900,7 @@
if ((Ret == ARABIC_CHARSET) || (Ret == HEBREW_CHARSET))
Ret = (GCP_KASHIDA|GCP_DIACRITIC|GCP_LIGATE|GCP_GLYPHSHAPE|GCP_REORDER);
}
- Gcp = GetDCDWord(hDc, GdiGetFontLanguageInfo, GCP_ERROR);
+ Gcp = GetDCDWord(hDc, GdiGetFontLanguageInfo, GCP_ERROR);
if ( Gcp == GCP_ERROR)
return Gcp;
else