Philip Rebohle : dxgi: Implement d3d12_swapchain_GetMaximumFrameLatency().
Module: wine Branch: master Commit: 85710526c26ea7a39411c7d263b801aa27c885e6 URL: https://source.winehq.org/git/wine.git/?a=commit;h=85710526c26ea7a39411c7d26... Author: Philip Rebohle <philip.rebohle(a)tu-dortmund.de> Date: Fri Apr 17 20:39:17 2020 +0430 dxgi: Implement d3d12_swapchain_GetMaximumFrameLatency(). Signed-off-by: Philip Rebohle <philip.rebohle(a)tu-dortmund.de> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/dxgi/swapchain.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/dlls/dxgi/swapchain.c b/dlls/dxgi/swapchain.c index 8e0f2b2239..bd200dddf0 100644 --- a/dlls/dxgi/swapchain.c +++ b/dlls/dxgi/swapchain.c @@ -2630,9 +2630,18 @@ static HRESULT STDMETHODCALLTYPE d3d12_swapchain_SetMaximumFrameLatency(IDXGISwa static HRESULT STDMETHODCALLTYPE d3d12_swapchain_GetMaximumFrameLatency(IDXGISwapChain3 *iface, UINT *max_latency) { - FIXME("iface %p, max_latency %p stub!\n", iface, max_latency); + struct d3d12_swapchain *swapchain = d3d12_swapchain_from_IDXGISwapChain3(iface); - return E_NOTIMPL; + TRACE("iface %p, max_latency %p.\n", iface, max_latency); + + if (!(swapchain->desc.Flags & DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT)) + { + WARN("DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT not set for swap chain %p.\n", iface); + return DXGI_ERROR_INVALID_CALL; + } + + *max_latency = swapchain->frame_latency; + return S_OK; } static HANDLE STDMETHODCALLTYPE d3d12_swapchain_GetFrameLatencyWaitableObject(IDXGISwapChain3 *iface)
participants (1)
-
Alexandre Julliard