1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-15 06:04:49 +01:00

make sure we don't get a blackscreen if device doesn't support StretchDIBits

This commit is contained in:
FunkyFr3sh 2024-09-29 02:27:14 +02:00
parent da99931f8c
commit 5336f7d1ec

View File

@ -99,14 +99,17 @@ DWORD WINAPI gdi_render_main(void)
FillRect(g_ddraw.render.hdc, &rc, (HBRUSH)GetStockObject(BLACK_BRUSH));
}
int lines_copied = 0;
if (g_ddraw.bnet_active)
{
RECT rc = { 0, 0, g_ddraw.render.width, g_ddraw.render.height };
FillRect(g_ddraw.render.hdc, &rc, (HBRUSH)GetStockObject(BLACK_BRUSH));
lines_copied = 1;
}
else if (upscale_hack)
{
real_StretchDIBits(
lines_copied = real_StretchDIBits(
g_ddraw.render.hdc,
g_ddraw.render.viewport.x,
g_ddraw.render.viewport.y,
@ -124,7 +127,7 @@ DWORD WINAPI gdi_render_main(void)
else if (!g_ddraw.child_window_exists &&
(g_ddraw.render.width != g_ddraw.width || g_ddraw.render.height != g_ddraw.height))
{
real_StretchDIBits(
lines_copied = real_StretchDIBits(
g_ddraw.render.hdc,
g_ddraw.render.viewport.x,
g_ddraw.render.viewport.y,
@ -139,7 +142,8 @@ DWORD WINAPI gdi_render_main(void)
DIB_RGB_COLORS,
SRCCOPY);
}
else
if (lines_copied == 0 || lines_copied == GDI_ERROR)
{
real_SetDIBitsToDevice(
g_ddraw.render.hdc,