diff --git a/src/dxgi/dxgi_adapter.cpp b/src/dxgi/dxgi_adapter.cpp index a6395f4b..71342b44 100644 --- a/src/dxgi/dxgi_adapter.cpp +++ b/src/dxgi/dxgi_adapter.cpp @@ -103,8 +103,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiAdapter::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGIAdapter), riid)) { + Logger::warn("DxgiAdapter::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return E_NOINTERFACE; } diff --git a/src/dxgi/dxgi_factory.cpp b/src/dxgi/dxgi_factory.cpp index 80d43ddc..3e218ecb 100644 --- a/src/dxgi/dxgi_factory.cpp +++ b/src/dxgi/dxgi_factory.cpp @@ -93,8 +93,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiFactory::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGIFactory), riid)) { + Logger::warn("DxgiFactory::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return E_NOINTERFACE; } diff --git a/src/dxgi/dxgi_output.cpp b/src/dxgi/dxgi_output.cpp index f1787bb7..034521a4 100644 --- a/src/dxgi/dxgi_output.cpp +++ b/src/dxgi/dxgi_output.cpp @@ -110,8 +110,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiOutput::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGIOutput), riid)) { + Logger::warn("DxgiOutput::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return E_NOINTERFACE; } diff --git a/src/dxgi/dxgi_surface.cpp b/src/dxgi/dxgi_surface.cpp index d18abd64..b2cc0393 100644 --- a/src/dxgi/dxgi_surface.cpp +++ b/src/dxgi/dxgi_surface.cpp @@ -29,8 +29,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiSurfaceFactory::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGIVkSurfaceFactory), riid)) { + Logger::warn("DxgiSurfaceFactory::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return E_NOINTERFACE; } diff --git a/src/dxgi/dxgi_swapchain.cpp b/src/dxgi/dxgi_swapchain.cpp index fef525be..226ba28d 100644 --- a/src/dxgi/dxgi_swapchain.cpp +++ b/src/dxgi/dxgi_swapchain.cpp @@ -65,8 +65,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiSwapChain::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGISwapChain), riid)) { + Logger::warn("DxgiSwapChain::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return E_NOINTERFACE; } diff --git a/src/dxgi/dxgi_swapchain_dispatcher.h b/src/dxgi/dxgi_swapchain_dispatcher.h index d7d8b584..d5c00cae 100644 --- a/src/dxgi/dxgi_swapchain_dispatcher.h +++ b/src/dxgi/dxgi_swapchain_dispatcher.h @@ -61,8 +61,11 @@ namespace dxvk { return S_OK; } - Logger::warn("DxgiSwapChainDispatcher::QueryInterface: Unknown interface query"); - Logger::warn(str::format(riid)); + if (logQueryInterfaceError(__uuidof(IDXGISwapChain), riid)) { + Logger::warn("DxgiSwapChainDispatcher::QueryInterface: Unknown interface query"); + Logger::warn(str::format(riid)); + } + return m_dispatch->QueryInterface(riid, ppvObject); }