align arbitrary resolution

This commit is contained in:
Vadim Rozenfeld 2015-02-23 22:21:14 +11:00
parent b2a0aef4a5
commit 2317e7c1d4

View File

@ -3018,7 +3018,7 @@ NTSTATUS QxlDevice::GetModeList(DXGK_DISPLAY_INFORMATION* pDispInfo)
tmpModeInfo->y_res >= Height && tmpModeInfo->y_res >= Height &&
tmpModeInfo->bits == QXL_BPP) tmpModeInfo->bits == QXL_BPP)
{ {
m_ModeNumbers[SuitableModeCount] = SuitableModeCount;//CurrentMode; m_ModeNumbers[SuitableModeCount] = SuitableModeCount;
SetVideoModeInfo(SuitableModeCount, tmpModeInfo); SetVideoModeInfo(SuitableModeCount, tmpModeInfo);
if (tmpModeInfo->x_res == MIN_WIDTH_SIZE && if (tmpModeInfo->x_res == MIN_WIDTH_SIZE &&
tmpModeInfo->y_res == MIN_HEIGHT_SIZE) tmpModeInfo->y_res == MIN_HEIGHT_SIZE)
@ -4419,8 +4419,8 @@ NTSTATUS QxlDevice::Escape(_In_ CONST DXGKARG_ESCAPE* pEscap)
return STATUS_INVALID_BUFFER_SIZE; return STATUS_INVALID_BUFFER_SIZE;
} }
custom_display = (QXLEscapeSetCustomDisplay*)pEscap->pPrivateDriverData; custom_display = (QXLEscapeSetCustomDisplay*)pEscap->pPrivateDriverData;
xres = custom_display->xres; xres = (custom_display->xres + 3) & ~0x3;
yres = custom_display->yres; yres = (custom_display->yres +3) & ~0x3;
bpp = custom_display->bpp; bpp = custom_display->bpp;
if (bpp != QXL_BPP) if (bpp != QXL_BPP)
{ {