From 91281e0530d729289604595b9e836bb1e2e67825 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Tue, 20 Nov 2018 18:45:48 +0100 Subject: [PATCH] bug fix for gdi frame skip, keep trying until last frame was drawn --- ddraw.rc | 2 +- src/render_soft.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ddraw.rc b/ddraw.rc index 59ee027..93931f9 100644 --- a/ddraw.rc +++ b/ddraw.rc @@ -4,7 +4,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 3 #define VERSION_BUILD 0 -#define VERSION_REVISION 0 +#define VERSION_REVISION 1 #define VERSION VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD, VERSION_REVISION #define VERSION_STRING ver_str(VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD, VERSION_REVISION) diff --git a/src/render_soft.c b/src/render_soft.c index 3322dcf..e438815 100644 --- a/src/render_soft.c +++ b/src/render_soft.c @@ -60,7 +60,9 @@ DWORD WINAPI render_soft_main(void) DWORD curTick = timeGetTime(); if (lastTick + frameLength > curTick) { + ReleaseSemaphore(ddraw->render.sem, 1, NULL); SetEvent(ddraw->render.ev); + SwitchToThread(); continue; } lastTick = curTick;