diff options
Diffstat (limited to 'chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp')
-rw-r--r-- | chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp b/chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp index 71beb6c5be6..b7a3f82cb48 100644 --- a/chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp +++ b/chromium/third_party/dawn/src/dawn_native/d3d12/BackendD3D12.cpp @@ -61,7 +61,7 @@ namespace dawn_native { namespace d3d12 { } if (FAILED(functions->createDxgiFactory2(dxgiFactoryFlags, IID_PPV_ARGS(&factory)))) { - return DAWN_DEVICE_LOST_ERROR("Failed to create a DXGI factory"); + return DAWN_INTERNAL_ERROR("Failed to create a DXGI factory"); } ASSERT(factory != nullptr); @@ -70,7 +70,8 @@ namespace dawn_native { namespace d3d12 { } // anonymous namespace - Backend::Backend(InstanceBase* instance) : BackendConnection(instance, BackendType::D3D12) { + Backend::Backend(InstanceBase* instance) + : BackendConnection(instance, wgpu::BackendType::D3D12) { } MaybeError Backend::Initialize() { @@ -105,7 +106,12 @@ namespace dawn_native { namespace d3d12 { ASSERT(dxgiAdapter != nullptr); - std::unique_ptr<Adapter> adapter = std::make_unique<Adapter>(this, dxgiAdapter); + ComPtr<IDXGIAdapter3> dxgiAdapter3; + HRESULT result = dxgiAdapter.As(&dxgiAdapter3); + ASSERT(SUCCEEDED(result)); + + std::unique_ptr<Adapter> adapter = + std::make_unique<Adapter>(this, std::move(dxgiAdapter3)); if (GetInstance()->ConsumedError(adapter->Initialize())) { continue; } |