[PATCH] dxgi: Implement IDXGISwapChain GetFullscreenState

Henri Verbeet hverbeet at gmail.com
Tue Jul 12 09:08:40 CDT 2016


On 11 July 2016 at 12:08, Alistair Leslie-Hughes
<leslie_alistair at hotmail.com> wrote:
> +static HRESULT STDMETHODCALLTYPE dxgi_swapchain_GetFullscreenState(IDXGISwapChain *iface,
> +        BOOL *fullscreen, IDXGIOutput **target)
> +{
> +    HRESULT hr = S_OK;
> +
> +    TRACE("iface %p, fullscreen %p, target %p semi-stub.\n", iface, fullscreen, target);
> +
> +    if (fullscreen)
> +        *fullscreen = TRUE;
> +
> +    if (target)
> +        hr = dxgi_swapchain_GetContainingOutput(iface, target);
> +
> +    return hr;
> +}
That's not a real implementation, of course.

> @@ -496,6 +498,22 @@ static void test_create_swapchain(void)
>      refcount = IUnknown_Release(parent);
>      todo_wine ok(refcount == 4, "Got unexpected refcount %u.\n", refcount);
>
> +    hr = IDXGISwapChain_GetFullscreenState(swapchain, NULL, NULL);
> +    ok(hr == S_OK, "GetFullscreenState failed, hr %#x.\n", hr);
> +
> +    hr = IDXGISwapChain_GetFullscreenState(swapchain, &fullscreen, NULL);
> +    ok(hr == S_OK, "GetFullscreenState failed, hr %#x.\n", hr);
> +
> +    hr = IDXGISwapChain_GetFullscreenState(swapchain, NULL, &target);
> +    ok(hr == S_OK, "GetFullscreenState failed, hr %#x.\n", hr);
> +    if(target)
> +        IDXGIOutput_Release(target);
> +
> +    hr = IDXGISwapChain_GetFullscreenState(swapchain, &fullscreen, &target);
> +    ok(hr == S_OK, "GetFullscreenState failed, hr %#x.\n", hr);
> +    if(target)
> +        IDXGIOutput_Release(target);
> +
And this doesn't test much beyond the function returning S_OK.



More information about the wine-devel mailing list