[PATCH 05/10] d3d11: Implement D3D11CreateDeviceAndSwapChain().
Henri Verbeet
hverbeet at gmail.com
Mon Sep 14 06:48:51 CDT 2015
On 14 September 2015 at 00:13, Józef Kucia <jkucia at codeweavers.com> wrote:
> + if (swapchain_out)
> + *swapchain_out = swapchain;
> + else
> + IDXGISwapChain_Release(swapchain);
Is "desc" validated or modified in this case? Otherwise you could
return a lot earlier. The test doesn't really cover that.
> + hr = D3D11CreateDevice(adapter, driver_type, swrast, flags, feature_levels, levels, sdk_version,
> + &device, NULL, NULL);
> + if (FAILED(hr))
> + {
> + WARN("Failed to create a device, returning %#x.\n", hr);
> + *device_out = NULL;
> + return hr;
> + }
...
> +
> + if (obtained_feature_level)
> + *obtained_feature_level = ID3D11Device_GetFeatureLevel(device);
> +
> + if (immediate_context)
> + ID3D11Device_GetImmediateContext(device, immediate_context);
This seems odd. Why not just pass these to D3D11CreateDevice()?
If you like you can do things like the D3D11CreateDevice() call inside
the if. I.e., "if (FAILED(hr = D3D11CreateDevice(...)))". I tend to do
that for newer code, older code usually has it on separate lines.
More information about the wine-devel
mailing list