mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 07:52:56 +00:00
Update FontGetObject, point out required modifications to support ENUMLOGFONTEXDVW for font objects.
svn path=/trunk/; revision=26511
This commit is contained in:
parent
cd5a11a313
commit
25e902187c
1 changed files with 32 additions and 5 deletions
|
@ -4108,12 +4108,39 @@ FontGetObject(PTEXTOBJ Font, INT Count, PVOID Buffer)
|
||||||
{
|
{
|
||||||
if( Buffer == NULL ) return sizeof(LOGFONTW);
|
if( Buffer == NULL ) return sizeof(LOGFONTW);
|
||||||
|
|
||||||
/* fixme SetLastWin32Error(ERROR_BUFFER_OVERFLOW); in count<0*/
|
switch (Count)
|
||||||
if (Count < sizeof(LOGFONTW)) return 0;
|
{
|
||||||
if (Count > sizeof(LOGFONTW)) Count = sizeof(LOGFONTW);
|
/* Everything will need to be converted over to ENUMLOGFONTEXDVW.
|
||||||
|
case sizeof(ENUMLOGFONTEXDVW):
|
||||||
|
RtlCopyMemory( (LPENUMLOGFONTEXDVW) Buffer.elfDesignVector,
|
||||||
|
&Font->logFont.elfDesignVector,
|
||||||
|
sizeof(DESIGNVECTOR));
|
||||||
|
case sizeof(ENUMLOGFONTEXW):
|
||||||
|
RtlCopyMemory( (LPENUMLOGFONTEXW) Buffer,
|
||||||
|
&Font->logFont.elfEnumLogfontEx,
|
||||||
|
sizeof(ENUMLOGFONTEXW));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case sizeof(EXTLOGFONTW):
|
||||||
|
case sizeof(ENUMLOGFONTW):
|
||||||
|
RtlCopyMemory((LPENUMLOGFONTW) Buffer,
|
||||||
|
(LPENUMLOGFONTW) &Font->logfont.elfEnumLogfontEx.elfLogFont,
|
||||||
|
sizeof(ENUMLOGFONTW));
|
||||||
|
break;
|
||||||
|
*/
|
||||||
|
case sizeof(LOGFONTW):
|
||||||
|
/* RtlCopyMemory((LPLOGFONTW) Buffer,
|
||||||
|
&Font->logFont.elfEnumLogfontEx.elfLogFont,
|
||||||
|
sizeof(LOGFONTW));
|
||||||
|
*/
|
||||||
RtlCopyMemory(Buffer, &Font->logfont, sizeof(LOGFONTW));
|
RtlCopyMemory(Buffer, &Font->logfont, sizeof(LOGFONTW));
|
||||||
return sizeof(LOGFONTW);
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
SetLastWin32Error(ERROR_BUFFER_OVERFLOW);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return Count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue