[PATCH 5/7] d3d12/tests: Add option to run tests with validation layers.

Józef Kucia joseph.kucia at gmail.com
Mon Jun 11 05:05:10 CDT 2018


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 dlls/d3d12/tests/d3d12.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/dlls/d3d12/tests/d3d12.c b/dlls/d3d12/tests/d3d12.c
index 51967a0c327f..a6d7219b9bbd 100644
--- a/dlls/d3d12/tests/d3d12.c
+++ b/dlls/d3d12/tests/d3d12.c
@@ -813,18 +813,28 @@ static void test_swapchain_draw(void)
 
 START_TEST(d3d12)
 {
+    BOOL enable_debug_layer = FALSE;
     unsigned int argc, i;
+    ID3D12Debug *debug;
     char **argv;
 
     argc = winetest_get_mainargs(&argv);
     for (i = 2; i < argc; ++i)
     {
-        if (!strcmp(argv[i], "--warp"))
+        if (!strcmp(argv[i], "--validate"))
+            enable_debug_layer = TRUE;
+        else if (!strcmp(argv[i], "--warp"))
             use_warp_adapter = TRUE;
         else if (!strcmp(argv[i], "--adapter") && i + 1 < argc)
             use_adapter_idx = atoi(argv[++i]);
     }
 
+    if (enable_debug_layer && SUCCEEDED(D3D12GetDebugInterface(&IID_ID3D12Debug, (void **)&debug)))
+    {
+        ID3D12Debug_EnableDebugLayer(debug);
+        ID3D12Debug_Release(debug);
+    }
+
     print_adapter_info();
 
     test_interfaces();
-- 
2.16.4




More information about the wine-devel mailing list