Added patch to improve stubs for dxgi MakeWindowAssociation and GetWindowAssociation.

This commit is contained in:
Sebastian Lackner 2015-08-05 05:32:57 +02:00
parent 16a22ca25b
commit d1b4dd170a
5 changed files with 97 additions and 12 deletions

View File

@ -39,6 +39,11 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
-----------------------------------
**Bug fixes and features included in the next upcoming release [1]:**
* Improve stubs for dxgi MakeWindowAssociation and GetWindowAssociation
**Bug fixes and features in Wine Staging 1.7.48 [238]:**
*Note: The following list only contains features and bug fixes which are not

2
debian/changelog vendored
View File

@ -1,4 +1,6 @@
wine-staging (1.7.49) UNRELEASED; urgency=low
* Added patch to improve stubs for dxgi MakeWindowAssociation and
GetWindowAssociation.
* Removed patch to avoid race-conditions with long running threadpool tasks
(accepted upstream).
* Removed patch to add support for ThreadQuerySetWin32StartAddress info class

View File

@ -0,0 +1,61 @@
From 1833c60c709550a99efa024659eb3149204d13f5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Tue, 19 Aug 2014 22:47:51 +0200
Subject: dxgi: Improve stubs for MakeWindowAssociation and
GetWindowAssociation.
---
dlls/dxgi/dxgi_private.h | 1 +
dlls/dxgi/factory.c | 16 ++++++++++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/dlls/dxgi/dxgi_private.h b/dlls/dxgi/dxgi_private.h
index 8703158..85c5ec1 100644
--- a/dlls/dxgi/dxgi_private.h
+++ b/dlls/dxgi/dxgi_private.h
@@ -94,6 +94,7 @@ struct dxgi_factory
IDXGIAdapter1 **adapters;
BOOL extended;
HWND device_window;
+ HWND assoc_window;
};
HRESULT dxgi_factory_create(REFIID riid, void **factory, BOOL extended) DECLSPEC_HIDDEN;
diff --git a/dlls/dxgi/factory.c b/dlls/dxgi/factory.c
index a66585e..1446557 100644
--- a/dlls/dxgi/factory.c
+++ b/dlls/dxgi/factory.c
@@ -163,16 +163,28 @@ static HRESULT STDMETHODCALLTYPE dxgi_factory_EnumAdapters(IDXGIFactory1 *iface,
static HRESULT STDMETHODCALLTYPE dxgi_factory_MakeWindowAssociation(IDXGIFactory1 *iface, HWND window, UINT flags)
{
+ struct dxgi_factory *factory = impl_from_IDXGIFactory1(iface);
+
FIXME("iface %p, window %p, flags %#x stub!\n", iface, window, flags);
- return E_NOTIMPL;
+ if (!window && flags)
+ return DXGI_ERROR_INVALID_CALL;
+
+ factory->assoc_window = window;
+ return S_OK;
}
static HRESULT STDMETHODCALLTYPE dxgi_factory_GetWindowAssociation(IDXGIFactory1 *iface, HWND *window)
{
+ struct dxgi_factory *factory = impl_from_IDXGIFactory1(iface);
+
FIXME("iface %p, window %p stub!\n", iface, window);
- return E_NOTIMPL;
+ if (!window)
+ return DXGI_ERROR_INVALID_CALL;
+
+ *window = factory->assoc_window;
+ return S_OK;
}
static UINT dxgi_rational_to_uint(const DXGI_RATIONAL *rational)
--
2.5.0

View File

@ -0,0 +1 @@
Fixes: Improve stubs for dxgi MakeWindowAssociation and GetWindowAssociation

View File

@ -118,6 +118,7 @@ patch_enable_all ()
enable_dsound_EAX="$1"
enable_dsound_Fast_Mixer="$1"
enable_dxgi_GetDesc="$1"
enable_dxgi_MakeWindowAssociation="$1"
enable_dxva2_Video_Decoder="$1"
enable_fltmgr_Stub_SYS="$1"
enable_fonts_Missing_Fonts="$1"
@ -431,6 +432,9 @@ patch_enable ()
dxgi-GetDesc)
enable_dxgi_GetDesc="$2"
;;
dxgi-MakeWindowAssociation)
enable_dxgi_MakeWindowAssociation="$2"
;;
dxva2-Video_Decoder)
enable_dxva2_Video_Decoder="$2"
;;
@ -2669,6 +2673,18 @@ if test "$enable_dxgi_GetDesc" -eq 1; then
) >> "$patchlist"
fi
# Patchset dxgi-MakeWindowAssociation
# |
# | Modified files:
# | * dlls/dxgi/dxgi_private.h, dlls/dxgi/factory.c
# |
if test "$enable_dxgi_MakeWindowAssociation" -eq 1; then
patch_apply dxgi-MakeWindowAssociation/0001-dxgi-Improve-stubs-for-MakeWindowAssociation-and-Get.patch
(
echo '+ { "Michael Müller", "dxgi: Improve stubs for MakeWindowAssociation and GetWindowAssociation.", 1 },';
) >> "$patchlist"
fi
# Patchset winecfg-Staging
# |
# | Modified files:
@ -4860,6 +4876,18 @@ if test "$enable_wined3d_CSMT_Helper" -eq 1; then
) >> "$patchlist"
fi
# Patchset wined3d-resource_check_usage
# |
# | Modified files:
# | * dlls/wined3d/resource.c
# |
if test "$enable_wined3d_resource_check_usage" -eq 1; then
patch_apply wined3d-resource_check_usage/0001-wined3d-Silence-repeated-resource_check_usage-FIXME.patch
(
echo '+ { "Erich E. Hoover", "wined3d: Silence repeated resource_check_usage FIXME.", 2 },';
) >> "$patchlist"
fi
# Patchset wined3d-wined3d_swapchain_present
# |
# | Modified files:
@ -4959,18 +4987,6 @@ if test "$enable_wined3d_UnhandledBlendFactor" -eq 1; then
) >> "$patchlist"
fi
# Patchset wined3d-resource_check_usage
# |
# | Modified files:
# | * dlls/wined3d/resource.c
# |
if test "$enable_wined3d_resource_check_usage" -eq 1; then
patch_apply wined3d-resource_check_usage/0001-wined3d-Silence-repeated-resource_check_usage-FIXME.patch
(
echo '+ { "Erich E. Hoover", "wined3d: Silence repeated resource_check_usage FIXME.", 2 },';
) >> "$patchlist"
fi
# Patchset wined3d-CSMT_Main
# |
# | This patchset fixes the following Wine bugs: