mirror of
https://github.com/reactos/wine.git
synced 2024-11-28 14:10:32 +00:00
gdi32: Add support for 16-bit QUERYESCSUPPORT queries.
This commit is contained in:
parent
7b3305169c
commit
c7d33e1d44
@ -1101,9 +1101,11 @@ INT WINAPI Escape( HDC hdc, INT escape, INT in_count, LPCSTR in_data, LPVOID out
|
||||
|
||||
case QUERYESCSUPPORT:
|
||||
{
|
||||
const INT *ptr = (const INT *)in_data;
|
||||
if (in_count < sizeof(INT)) return 0;
|
||||
switch(*ptr)
|
||||
DWORD code;
|
||||
|
||||
if (in_count < sizeof(SHORT)) return 0;
|
||||
code = (in_count < sizeof(DWORD)) ? *(const USHORT *)in_data : *(const DWORD *)in_data;
|
||||
switch (code)
|
||||
{
|
||||
case ABORTDOC:
|
||||
case ENDDOC:
|
||||
|
@ -66,15 +66,18 @@ INT PSDRV_ExtEscape( PHYSDEV dev, INT nEscape, INT cbInput, LPCVOID in_data,
|
||||
{
|
||||
PSDRV_PDEVICE *physDev = get_psdrv_dev( dev );
|
||||
|
||||
TRACE("%p,%d,%d,%p,%d,%p\n",
|
||||
dev->hdc, nEscape, cbInput, in_data, cbOutput, out_data);
|
||||
|
||||
switch(nEscape)
|
||||
{
|
||||
case QUERYESCSUPPORT:
|
||||
if(cbInput < sizeof(INT))
|
||||
if(cbInput < sizeof(SHORT))
|
||||
{
|
||||
WARN("cbInput < sizeof(INT) (=%d) for QUERYESCSUPPORT\n", cbInput);
|
||||
WARN("cbInput < sizeof(SHORT) (=%d) for QUERYESCSUPPORT\n", cbInput);
|
||||
return 0;
|
||||
} else {
|
||||
UINT num = *(const UINT *)in_data;
|
||||
DWORD num = (cbInput < sizeof(DWORD)) ? *(const USHORT *)in_data : *(const DWORD *)in_data;
|
||||
TRACE("QUERYESCSUPPORT for %d\n", num);
|
||||
|
||||
switch(num) {
|
||||
|
@ -316,7 +316,7 @@ static INT X11DRV_ExtEscape( PHYSDEV dev, INT escape, INT in_count, LPCVOID in_d
|
||||
switch(escape)
|
||||
{
|
||||
case QUERYESCSUPPORT:
|
||||
if (in_data)
|
||||
if (in_data && in_count >= sizeof(DWORD))
|
||||
{
|
||||
switch (*(const INT *)in_data)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user