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

#227 fix changing resolutions bug

This commit is contained in:
FunkyFr3sh 2023-07-28 05:50:23 +02:00
parent 79100ce609
commit 6269950402
2 changed files with 11 additions and 1 deletions

View File

@ -1131,7 +1131,10 @@ ULONG dd_Release()
DeleteCriticalSection(&g_ddraw->cs);
/* restore old wndproc, subsequent ddraw creation will otherwise fail */
real_SetWindowLongA(g_ddraw->hwnd, GWL_WNDPROC, (LONG)g_ddraw->wndproc);
if (g_ddraw->hwnd)
{
real_SetWindowLongA(g_ddraw->hwnd, GWL_WNDPROC, (LONG)g_ddraw->wndproc);
}
HeapFree(GetProcessHeap(), 0, g_ddraw);
g_ddraw = NULL;

View File

@ -969,6 +969,13 @@ BOOL WINAPI fake_DestroyWindow(HWND hWnd)
{
BOOL result = real_DestroyWindow(hWnd);
if (result && g_ddraw && hWnd == g_ddraw->hwnd)
{
g_ddraw->hwnd = NULL;
g_ddraw->wndproc = NULL;
g_ddraw->render.hdc = NULL;
}
if (g_ddraw && g_ddraw->hwnd != hWnd && g_ddraw->bnet_active)
{
RedrawWindow(NULL, NULL, NULL, RDW_ERASE | RDW_INVALIDATE | RDW_ALLCHILDREN);