From 76f236ea5df08c803f743ea705546b6791c4e84a Mon Sep 17 00:00:00 2001 From: "Bernhart, Bryan" Date: Mon, 12 Dec 2022 11:06:44 -0800 Subject: [PATCH] Log to console on D3D failures. --- src/gpgmm/d3d12/ErrorD3D12.h | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/gpgmm/d3d12/ErrorD3D12.h b/src/gpgmm/d3d12/ErrorD3D12.h index ae18264ea..423210ea2 100644 --- a/src/gpgmm/d3d12/ErrorD3D12.h +++ b/src/gpgmm/d3d12/ErrorD3D12.h @@ -16,19 +16,21 @@ #include "gpgmm/d3d12/d3d12_platform.h" #include "gpgmm/utils/Compiler.h" +#include "gpgmm/utils/Log.h" #include namespace gpgmm::d3d12 { -#define ReturnIfFailed(expr) \ - { \ - HRESULT hr = expr; \ - if (GPGMM_UNLIKELY(FAILED(hr))) { \ - return hr; \ - } \ - } \ - for (;;) \ +#define ReturnIfFailed(expr) \ + { \ + HRESULT hr = expr; \ + if (GPGMM_UNLIKELY(FAILED(hr))) { \ + gpgmm::DebugLog() << #expr << ": " << GetErrorMessage(hr); \ + return hr; \ + } \ + } \ + for (;;) \ break #define ReturnIfSucceeded(expr) \ @@ -42,6 +44,7 @@ namespace gpgmm::d3d12 { break std::string GetDeviceErrorMessage(ID3D12Device* device, HRESULT error); + std::string GetErrorMessage(HRESULT error); } // namespace gpgmm::d3d12