d3d10core: Try to create a software adapter when no regular adapters are found as well.

This commit is contained in:
Henri Verbeet 2010-10-25 12:33:41 +02:00 committed by Alexandre Julliard
parent 5ef7a8c242
commit bbc7b5ac20

View file

@ -35,18 +35,19 @@ static ID3D10Device *create_device(void)
if (FAILED(hr)) goto cleanup;
hr = IDXGIFactory_EnumAdapters(factory, 0, &adapter);
ok(SUCCEEDED(hr) ||
hr == DXGI_ERROR_NOT_FOUND, /* Some VMware and VirtualBox */
"EnumAdapters failed, hr %#x\n", hr);
if (FAILED(hr)) goto cleanup;
ok(SUCCEEDED(hr) || hr == DXGI_ERROR_NOT_FOUND, /* Some VMware and VirtualBox */
"EnumAdapters failed, hr %#x.\n", hr);
if (SUCCEEDED(hr))
{
hr = D3D10CoreCreateDevice(factory, adapter, 0, NULL, &device);
}
hr = D3D10CoreCreateDevice(factory, adapter, 0, NULL, &device);
if (FAILED(hr))
{
HMODULE d3d10ref;
trace("Failed to create a HW device, trying REF\n");
IDXGIAdapter_Release(adapter);
if (adapter) IDXGIAdapter_Release(adapter);
adapter = NULL;
d3d10ref = LoadLibraryA("d3d10ref.dll");