1
0
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:
FunkyFr3sh 2022-10-19 23:48:20 +02:00
parent 24d66d8a30
commit 0345cbdda3
3 changed files with 5 additions and 0 deletions

View File

@ -173,6 +173,7 @@ typedef struct CNCDDRAW
BOOL show_driver_warning;
SPEEDLIMITER ticks_limiter;
SPEEDLIMITER flip_limiter;
DWORD gui_thread;
} CNCDDRAW;

View File

@ -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)
{

View File

@ -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 };