mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
only limit ticks in gui thread
This commit is contained in:
parent
24d66d8a30
commit
0345cbdda3
1
inc/dd.h
1
inc/dd.h
@ -173,6 +173,7 @@ typedef struct CNCDDRAW
|
||||
BOOL show_driver_warning;
|
||||
SPEEDLIMITER ticks_limiter;
|
||||
SPEEDLIMITER flip_limiter;
|
||||
DWORD gui_thread;
|
||||
|
||||
} CNCDDRAW;
|
||||
|
||||
|
1
src/dd.c
1
src/dd.c
@ -890,6 +890,7 @@ HRESULT dd_SetCooperativeLevel(HWND hwnd, DWORD dwFlags)
|
||||
hook_init();
|
||||
|
||||
g_ddraw->wndproc = (WNDPROC)real_SetWindowLongA(g_ddraw->hwnd, GWL_WNDPROC, (LONG)fake_WndProc);
|
||||
g_ddraw->gui_thread = GetWindowThreadProcessId(hwnd, NULL);
|
||||
|
||||
if (!g_ddraw->render.hdc)
|
||||
{
|
||||
|
@ -62,6 +62,9 @@ BOOL util_is_avx_supported()
|
||||
|
||||
void util_limit_game_ticks()
|
||||
{
|
||||
if (GetCurrentThreadId() != g_ddraw->gui_thread)
|
||||
return;
|
||||
|
||||
if (g_ddraw->ticks_limiter.htimer)
|
||||
{
|
||||
FILETIME ft = { 0 };
|
||||
|
Loading…
x
Reference in New Issue
Block a user