[win32k] Add parameter checks for NtGdiSetVirtualResolution

svn path=/trunk/; revision=44656
This commit is contained in:
Gregor Schneider 2009-12-19 18:57:27 +00:00
parent 5416a90f26
commit f9d540f20b

View file

@ -1024,7 +1024,20 @@ NtGdiSetVirtualResolution(
PDC dc;
PDC_ATTR pdcattr;
// Need test types for zeros and non zeros
/* Check parameters (all zeroes resets to real resolution) */
if (cxVirtualDevicePixel == 0 && cyVirtualDevicePixel == 0 &&
cxVirtualDeviceMm == 0 && cyVirtualDeviceMm == 0)
{
cxVirtualDevicePixel = NtGdiGetDeviceCaps(hdc, HORZRES);
cyVirtualDevicePixel = NtGdiGetDeviceCaps(hdc, VERTRES);
cxVirtualDeviceMm = NtGdiGetDeviceCaps(hdc, HORZSIZE);
cyVirtualDeviceMm = NtGdiGetDeviceCaps(hdc, VERTSIZE);
}
else if (cxVirtualDevicePixel == 0 || cyVirtualDevicePixel == 0 ||
cxVirtualDeviceMm == 0 || cyVirtualDeviceMm == 0)
{
return FALSE;
}
dc = DC_LockDc(hdc);
if (!dc) return FALSE;