From aee7e41ff17a171f2e03572fcb5c55ce45fbeb29 Mon Sep 17 00:00:00 2001 From: Echelon9 Date: Sat, 5 Apr 2014 23:19:36 +1100 Subject: [PATCH] Permit the DirectX Debug Runtime on strict error reporting to pass an early issue releasing D3DDevice surfaces --- src/CxbxKrnl/EmuD3D8.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/CxbxKrnl/EmuD3D8.cpp b/src/CxbxKrnl/EmuD3D8.cpp index 624f983c2..21d109212 100644 --- a/src/CxbxKrnl/EmuD3D8.cpp +++ b/src/CxbxKrnl/EmuD3D8.cpp @@ -721,7 +721,11 @@ static DWORD WINAPI EmuCreateDeviceProxy(LPVOID) g_pD3DDevice8->EndScene(); - while(g_pD3DDevice8->Release() != 0); + // Address DirectX Debug Runtime reported error in _DEBUG builds + // Direct3D8: (ERROR) :Not all objects were freed: the following indicate the types of unfreed objects. + #ifndef _DEBUG + while(g_pD3DDevice8->Release() != 0); + #endif g_pD3DDevice8 = 0; }