mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
fix for render crash
This commit is contained in:
parent
fbdfe63231
commit
772c0374eb
9
main.c
9
main.c
@ -544,13 +544,6 @@ ULONG __stdcall ddraw_Release(IDirectDrawImpl *This)
|
||||
PostMessage(This->hWnd, WM_USER, 0, 0);
|
||||
}
|
||||
|
||||
if (This->render.thread)
|
||||
{
|
||||
HANDLE thread = This->render.thread;
|
||||
This->render.thread = NULL;
|
||||
WaitForSingleObject(thread, INFINITE);
|
||||
}
|
||||
|
||||
if(This->render.hDC)
|
||||
{
|
||||
ReleaseDC(This->hWnd, This->render.hDC);
|
||||
@ -738,7 +731,7 @@ HRESULT WINAPI DirectDrawCreate(GUID FAR* lpGUID, LPDIRECTDRAW FAR* lplpDD, IUnk
|
||||
}
|
||||
|
||||
GetPrivateProfileStringA("ddraw", "screenshotKey", "G", tmp, sizeof(tmp), This->ini_path);
|
||||
ddraw->screenshotKey = tmp[0];
|
||||
ddraw->screenshotKey = toupper(tmp[0]);
|
||||
|
||||
This->render.maxfps = GetPrivateProfileIntA("ddraw", "max_fps", 120, This->ini_path);
|
||||
This->render.width = GetPrivateProfileIntA("ddraw", "width", 0, This->ini_path);
|
||||
|
@ -44,6 +44,13 @@ ULONG __stdcall ddraw_surface_Release(IDirectDrawSurfaceImpl *This)
|
||||
|
||||
if(This->Ref == 0)
|
||||
{
|
||||
if (ddraw->render.thread)
|
||||
{
|
||||
HANDLE thread = ddraw->render.thread;
|
||||
ddraw->render.thread = NULL;
|
||||
WaitForSingleObject(thread, INFINITE);
|
||||
}
|
||||
|
||||
if(This->caps == DDSCAPS_PRIMARYSURFACE)
|
||||
{
|
||||
EnterCriticalSection(&ddraw->cs);
|
||||
|
Loading…
x
Reference in New Issue
Block a user