diff --git a/src/winapi_hooks.c b/src/winapi_hooks.c index d244c44..818955f 100644 --- a/src/winapi_hooks.c +++ b/src/winapi_hooks.c @@ -850,6 +850,11 @@ BOOL WINAPI fake_StretchBlt( POINT pt = { 0 }; real_MapWindowPoints(hwnd, g_ddraw.hwnd, &pt, 1); + int org_mode = SetStretchBltMode(hdcDest, COLORONCOLOR); + SetStretchBltMode(hdcDest, org_mode); + + int mode = SetStretchBltMode(primary_dc, org_mode); + BOOL result = real_StretchBlt( primary_dc, @@ -864,6 +869,8 @@ BOOL WINAPI fake_StretchBlt( hSrc, rop); + SetStretchBltMode(primary_dc, mode); + dds_ReleaseDC(g_ddraw.primary, primary_dc); return result;