implement GetFontAssocStatus.

do correct implement of GetFontData, if the lpvBuffer are NULL in user mode, gdi32.dll always send in cbData as 0 to win32k.sys

svn path=/trunk/; revision=28706
This commit is contained in:
Magnus Olsen 2007-08-31 14:38:48 +00:00
parent 58b517d1c1
commit 4d772974cc
2 changed files with 30 additions and 5 deletions

View file

@ -385,7 +385,7 @@ GetEnhMetaFilePaletteEntries@12
GetEnhMetaFilePixelFormat@12
GetEnhMetaFileW@4
GetFontAssocStatus@4
GetFontData@20=NtGdiGetFontData@20
GetFontData@20
GetFontLanguageInfo@4
GetFontResourceInfoW@16
GetFontUnicodeRanges@8

View file

@ -1689,15 +1689,20 @@ GetEUDCTimeStamp(VOID)
}
/*
* @unimplemented
* @implemented
*/
ULONG
STDCALL
GetFontAssocStatus(HDC hdc)
{
UNIMPLEMENTED;
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return 0;
ULONG retValue = 0;
if (hdc)
{
retValue = NtGdiQueryFontAssocInfo(hdc);
}
return retValue;
}
/*
@ -2912,3 +2917,23 @@ GetCharABCWidths(HDC hdc,
/* FIXME some part need be done in user mode */
return NtGdiGetCharABCWidths(hdc, uFirstChar, uLastChar, lpabc);
}
/*
* @implemented
*
*/
DWORD
STDCALL
GetFontData(HDC hdc,
DWORD dwTable,
DWORD dwOffset,
LPVOID lpvBuffer,
DWORD cbData)
{
if (!lpvBuffer)
{
cbData = 0;
}
return NtGdiGetFontData(hdc, dwTable, dwOffset, lpvBuffer, cbData);
}