[PATCH 5/5] wined3d: Remove no longer needed output parameter in wined3d_swapchain_state_resize_target().
Zhiyi Zhang
zzhang at codeweavers.com
Fri May 15 02:46:41 CDT 2020
current output is stored as part of the swapchain state now.
Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
---
dlls/dxgi/swapchain.c | 19 +++++--------------
dlls/wined3d/swapchain.c | 9 +++++----
dlls/wined3d/wined3d.spec | 2 +-
include/wine/wined3d.h | 2 +-
4 files changed, 12 insertions(+), 20 deletions(-)
diff --git a/dlls/dxgi/swapchain.c b/dlls/dxgi/swapchain.c
index 432c114d848..f37aee933ec 100644
--- a/dlls/dxgi/swapchain.c
+++ b/dlls/dxgi/swapchain.c
@@ -159,13 +159,10 @@ HRESULT dxgi_get_output_from_window(IDXGIFactory *factory, HWND window, IDXGIOut
return DXGI_ERROR_NOT_FOUND;
}
-static HRESULT dxgi_swapchain_resize_target(IDXGISwapChain1 *swapchain,
- struct wined3d_swapchain_state *state, const DXGI_MODE_DESC *target_mode_desc)
+static HRESULT dxgi_swapchain_resize_target(struct wined3d_swapchain_state *state,
+ const DXGI_MODE_DESC *target_mode_desc)
{
struct wined3d_display_mode mode;
- struct dxgi_output *dxgi_output;
- IDXGIOutput *output;
- HRESULT hr;
if (!target_mode_desc)
{
@@ -173,10 +170,6 @@ static HRESULT dxgi_swapchain_resize_target(IDXGISwapChain1 *swapchain,
return DXGI_ERROR_INVALID_CALL;
}
- if (FAILED(hr = IDXGISwapChain1_GetContainingOutput(swapchain, &output)))
- return hr;
- dxgi_output = unsafe_impl_from_IDXGIOutput(output);
-
TRACE("Mode: %s.\n", debug_dxgi_mode(target_mode_desc));
if (target_mode_desc->Scaling)
@@ -184,9 +177,7 @@ static HRESULT dxgi_swapchain_resize_target(IDXGISwapChain1 *swapchain,
wined3d_display_mode_from_dxgi(&mode, target_mode_desc);
- hr = wined3d_swapchain_state_resize_target(state, dxgi_output->wined3d_output, &mode);
- IDXGIOutput_Release(output);
- return hr;
+ return wined3d_swapchain_state_resize_target(state, &mode);
}
static HWND d3d11_swapchain_get_hwnd(struct d3d11_swapchain *swapchain)
@@ -571,7 +562,7 @@ static HRESULT STDMETHODCALLTYPE d3d11_swapchain_ResizeTarget(IDXGISwapChain1 *i
state = wined3d_swapchain_get_state(swapchain->wined3d_swapchain);
- return dxgi_swapchain_resize_target(iface, state, target_mode_desc);
+ return dxgi_swapchain_resize_target(state, target_mode_desc);
}
static HRESULT STDMETHODCALLTYPE d3d11_swapchain_GetContainingOutput(IDXGISwapChain1 *iface, IDXGIOutput **output)
@@ -2399,7 +2390,7 @@ static HRESULT STDMETHODCALLTYPE d3d12_swapchain_ResizeTarget(IDXGISwapChain3 *i
TRACE("iface %p, target_mode_desc %p.\n", iface, target_mode_desc);
- return dxgi_swapchain_resize_target((IDXGISwapChain1 *)iface, swapchain->state, target_mode_desc);
+ return dxgi_swapchain_resize_target(swapchain->state, target_mode_desc);
}
static HRESULT STDMETHODCALLTYPE d3d12_swapchain_GetContainingOutput(IDXGISwapChain3 *iface,
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
index 0e439e1b068..0af6e8e41c5 100644
--- a/dlls/wined3d/swapchain.c
+++ b/dlls/wined3d/swapchain.c
@@ -1459,7 +1459,7 @@ static HRESULT wined3d_swapchain_state_set_display_mode(struct wined3d_swapchain
}
HRESULT CDECL wined3d_swapchain_state_resize_target(struct wined3d_swapchain_state *state,
- struct wined3d_output *output, const struct wined3d_display_mode *mode)
+ const struct wined3d_display_mode *mode)
{
struct wined3d_display_mode actual_mode;
struct wined3d_output_desc output_desc;
@@ -1468,7 +1468,7 @@ HRESULT CDECL wined3d_swapchain_state_resize_target(struct wined3d_swapchain_sta
HWND window;
HRESULT hr;
- TRACE("state %p, output %p, mode %p.\n", state, output, mode);
+ TRACE("state %p, mode %p.\n", state, mode);
wined3d_mutex_lock();
@@ -1492,7 +1492,8 @@ HRESULT CDECL wined3d_swapchain_state_resize_target(struct wined3d_swapchain_sta
if (state->desc.flags & WINED3D_SWAPCHAIN_ALLOW_MODE_SWITCH)
{
actual_mode = *mode;
- if (FAILED(hr = wined3d_swapchain_state_set_display_mode(state, output, &actual_mode)))
+ if (FAILED(hr = wined3d_swapchain_state_set_display_mode(state, state->desc.output,
+ &actual_mode)))
{
ERR("Failed to set display mode, hr %#x.\n", hr);
wined3d_mutex_unlock();
@@ -1500,7 +1501,7 @@ HRESULT CDECL wined3d_swapchain_state_resize_target(struct wined3d_swapchain_sta
}
}
- if (FAILED(hr = wined3d_output_get_desc(output, &output_desc)))
+ if (FAILED(hr = wined3d_output_get_desc(state->desc.output, &output_desc)))
{
ERR("Failed to get output description, hr %#x.\n", hr);
wined3d_mutex_unlock();
diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec
index 22b837bc4bd..e7d08914cda 100644
--- a/dlls/wined3d/wined3d.spec
+++ b/dlls/wined3d/wined3d.spec
@@ -283,7 +283,7 @@
@ cdecl wined3d_swapchain_state_create(ptr ptr ptr)
@ cdecl wined3d_swapchain_state_destroy(ptr)
-@ cdecl wined3d_swapchain_state_resize_target(ptr ptr ptr)
+@ cdecl wined3d_swapchain_state_resize_target(ptr ptr)
@ cdecl wined3d_swapchain_state_set_fullscreen(ptr ptr ptr)
@ cdecl wined3d_texture_add_dirty_region(ptr long ptr)
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index 75734949af6..f42c1a80502 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -2772,7 +2772,7 @@ HRESULT __cdecl wined3d_swapchain_state_create(const struct wined3d_swapchain_de
HWND window, struct wined3d_swapchain_state **state);
void __cdecl wined3d_swapchain_state_destroy(struct wined3d_swapchain_state *state);
HRESULT __cdecl wined3d_swapchain_state_resize_target(struct wined3d_swapchain_state *state,
- struct wined3d_output *output, const struct wined3d_display_mode *mode);
+ const struct wined3d_display_mode *mode);
HRESULT __cdecl wined3d_swapchain_state_set_fullscreen(struct wined3d_swapchain_state *state,
const struct wined3d_swapchain_desc *desc, const struct wined3d_display_mode *mode);
--
2.25.1
More information about the wine-devel
mailing list