From 441d7794cdc639cf0989b8435ff4475a69d6e9a0 Mon Sep 17 00:00:00 2001 From: narzoul Date: Sat, 30 Apr 2016 16:19:12 +0200 Subject: [PATCH] Fixed hangups caused by unreleased back buffer surface --- DDrawCompat/RealPrimarySurface.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/DDrawCompat/RealPrimarySurface.cpp b/DDrawCompat/RealPrimarySurface.cpp index 499423f..76fb586 100644 --- a/DDrawCompat/RealPrimarySurface.cpp +++ b/DDrawCompat/RealPrimarySurface.cpp @@ -111,7 +111,11 @@ namespace ResetEvent(g_updateEvent); timeEndPeriod(1); g_frontBuffer = nullptr; - g_backBuffer = nullptr; + if (g_backBuffer) + { + CompatDirectDrawSurface::s_origVtable.Release(g_backBuffer); + g_backBuffer = nullptr; + } g_isFullScreen = false; CompatPaletteConverter::release();