You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against 83ca9a95de80083d906a2aeb5d1e5ca2ed611199
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
From 64f08bf065be9b766dce1c52a0be260dc1e26679 Mon Sep 17 00:00:00 2001
|
||||
From 826f68ed53563b81d225b49131bbd3595c6d885b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sun, 6 Sep 2015 20:21:42 +0200
|
||||
Subject: ddraw: Set dwZBufferBitDepth in ddraw7_GetCaps.
|
||||
Subject: [PATCH] ddraw: Set dwZBufferBitDepth in ddraw7_GetCaps.
|
||||
|
||||
---
|
||||
dlls/ddraw/ddraw.c | 24 ++++++++++++++++++++++++
|
||||
1 file changed, 24 insertions(+)
|
||||
|
||||
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
|
||||
index c94bfee..77a1bea 100644
|
||||
index 8d608656143..cc8adccf049 100644
|
||||
--- a/dlls/ddraw/ddraw.c
|
||||
+++ b/dlls/ddraw/ddraw.c
|
||||
@@ -1420,6 +1420,28 @@ HRESULT ddraw_get_d3dcaps(const struct ddraw *ddraw, D3DDEVICEDESC7 *caps)
|
||||
@@ -1434,6 +1434,28 @@ HRESULT ddraw_get_d3dcaps(const struct ddraw *ddraw, D3DDEVICEDESC7 *caps)
|
||||
return DD_OK;
|
||||
}
|
||||
|
||||
@@ -40,15 +40,15 @@ index c94bfee..77a1bea 100644
|
||||
/*****************************************************************************
|
||||
* IDirectDraw7::GetCaps
|
||||
*
|
||||
@@ -1500,6 +1522,8 @@ static HRESULT WINAPI ddraw7_GetCaps(IDirectDraw7 *iface, DDCAPS *DriverCaps, DD
|
||||
@@ -1514,6 +1536,8 @@ static HRESULT WINAPI ddraw7_GetCaps(IDirectDraw7 *iface, DDCAPS *DriverCaps, DD
|
||||
caps.dwCaps |= DDCAPS_ALIGNSTRIDE;
|
||||
caps.dwAlignStrideAlign = DDRAW_STRIDE_ALIGNMENT;
|
||||
|
||||
+ IDirect3D7_EnumZBufferFormats(&ddraw->IDirect3D7_iface, &IID_IDirect3DHALDevice, enum_zbuffer, &caps);
|
||||
+
|
||||
caps.ddsOldCaps.dwCaps = caps.ddsCaps.dwCaps;
|
||||
|
||||
if(DriverCaps)
|
||||
{
|
||||
DD_STRUCT_COPY_BYSIZE(DriverCaps, &caps);
|
||||
--
|
||||
2.5.1
|
||||
2.20.1
|
||||
|
||||
|
@@ -1,205 +0,0 @@
|
||||
From 1b741a4b555ad98a769fdb9fa659134b83293a4e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 4 Mar 2016 22:22:42 +0100
|
||||
Subject: [PATCH] ddraw: Set ddsOldCaps correctly in ddraw7_GetCaps.
|
||||
|
||||
---
|
||||
dlls/ddraw/ddraw.c | 2 ++
|
||||
dlls/ddraw/tests/ddraw1.c | 26 ++++++++++++++++++++++++++
|
||||
dlls/ddraw/tests/ddraw2.c | 26 ++++++++++++++++++++++++++
|
||||
dlls/ddraw/tests/ddraw4.c | 26 ++++++++++++++++++++++++++
|
||||
dlls/ddraw/tests/ddraw7.c | 26 ++++++++++++++++++++++++++
|
||||
5 files changed, 106 insertions(+)
|
||||
|
||||
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c
|
||||
index fad185e..ebf91b3 100644
|
||||
--- a/dlls/ddraw/ddraw.c
|
||||
+++ b/dlls/ddraw/ddraw.c
|
||||
@@ -1543,6 +1543,8 @@ static HRESULT WINAPI ddraw7_GetCaps(IDirectDraw7 *iface, DDCAPS *DriverCaps, DD
|
||||
caps.dwCaps |= DDCAPS_ALIGNSTRIDE;
|
||||
caps.dwAlignStrideAlign = DDRAW_STRIDE_ALIGNMENT;
|
||||
|
||||
+ caps.ddsOldCaps.dwCaps = caps.ddsCaps.dwCaps;
|
||||
+
|
||||
IDirect3D7_EnumZBufferFormats(&ddraw->IDirect3D7_iface, &IID_IDirect3DHALDevice, enum_zbuffer, &caps);
|
||||
|
||||
if(DriverCaps)
|
||||
diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c
|
||||
index 59d07b7..5d81abb 100644
|
||||
--- a/dlls/ddraw/tests/ddraw1.c
|
||||
+++ b/dlls/ddraw/tests/ddraw1.c
|
||||
@@ -11581,6 +11581,31 @@ static void test_execute_data(void)
|
||||
DestroyWindow(window);
|
||||
}
|
||||
|
||||
+static void test_caps(void)
|
||||
+{
|
||||
+ IDirectDraw *ddraw;
|
||||
+ DDCAPS caps, caps2;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ ddraw = create_ddraw();
|
||||
+ ok(!!ddraw, "Failed to create a ddraw object.\n");
|
||||
+
|
||||
+ caps.dwSize = sizeof(caps);
|
||||
+ caps2.dwSize = sizeof(caps2);
|
||||
+ hr = IDirectDraw_GetCaps(ddraw, &caps, &caps2);
|
||||
+ ok(SUCCEEDED(hr), "Failed to query for caps, hr %#x.\n", hr);
|
||||
+
|
||||
+ ok(caps.ddsOldCaps.dwCaps == caps.ddsCaps.dwCaps,
|
||||
+ "Expected hal ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps.ddsOldCaps.dwCaps, caps.ddsCaps.dwCaps);
|
||||
+
|
||||
+ ok(caps2.ddsOldCaps.dwCaps == caps2.ddsCaps.dwCaps,
|
||||
+ "Expected hel ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps2.ddsOldCaps.dwCaps, caps2.ddsCaps.dwCaps);
|
||||
+
|
||||
+ IDirectDraw_Release(ddraw);
|
||||
+}
|
||||
+
|
||||
static void test_viewport(void)
|
||||
{
|
||||
static struct
|
||||
@@ -12068,6 +12093,7 @@ START_TEST(ddraw1)
|
||||
test_depth_readback();
|
||||
test_clear();
|
||||
test_enum_surfaces();
|
||||
+ test_caps();
|
||||
test_execute_data();
|
||||
test_viewport();
|
||||
test_find_device();
|
||||
diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c
|
||||
index 8b9b249..b9b964d 100644
|
||||
--- a/dlls/ddraw/tests/ddraw2.c
|
||||
+++ b/dlls/ddraw/tests/ddraw2.c
|
||||
@@ -12862,6 +12862,31 @@ static void test_enum_surfaces(void)
|
||||
IDirectDraw2_Release(ddraw);
|
||||
}
|
||||
|
||||
+static void test_caps(void)
|
||||
+{
|
||||
+ IDirectDraw2 *ddraw;
|
||||
+ DDCAPS caps, caps2;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ ddraw = create_ddraw();
|
||||
+ ok(!!ddraw, "Failed to create a ddraw object.\n");
|
||||
+
|
||||
+ caps.dwSize = sizeof(caps);
|
||||
+ caps2.dwSize = sizeof(caps2);
|
||||
+ hr = IDirectDraw2_GetCaps(ddraw, &caps, &caps2);
|
||||
+ ok(SUCCEEDED(hr), "Failed to query for caps, hr %#x.\n", hr);
|
||||
+
|
||||
+ ok(caps.ddsOldCaps.dwCaps == caps.ddsCaps.dwCaps,
|
||||
+ "Expected hal ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps.ddsOldCaps.dwCaps, caps.ddsCaps.dwCaps);
|
||||
+
|
||||
+ ok(caps2.ddsOldCaps.dwCaps == caps2.ddsCaps.dwCaps,
|
||||
+ "Expected hel ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps2.ddsOldCaps.dwCaps, caps2.ddsCaps.dwCaps);
|
||||
+
|
||||
+ IDirectDraw2_Release(ddraw);
|
||||
+}
|
||||
+
|
||||
static void test_viewport(void)
|
||||
{
|
||||
static struct
|
||||
@@ -13378,6 +13403,7 @@ START_TEST(ddraw2)
|
||||
test_depth_readback();
|
||||
test_clear();
|
||||
test_enum_surfaces();
|
||||
+ test_caps();
|
||||
test_viewport();
|
||||
test_find_device();
|
||||
test_killfocus();
|
||||
diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c
|
||||
index 1c48418..306f233 100644
|
||||
--- a/dlls/ddraw/tests/ddraw4.c
|
||||
+++ b/dlls/ddraw/tests/ddraw4.c
|
||||
@@ -15472,6 +15472,31 @@ static void test_sysmem_draw(void)
|
||||
DestroyWindow(window);
|
||||
}
|
||||
|
||||
+static void test_caps(void)
|
||||
+{
|
||||
+ IDirectDraw4 *ddraw;
|
||||
+ DDCAPS caps, caps2;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ ddraw = create_ddraw();
|
||||
+ ok(!!ddraw, "Failed to create a ddraw object.\n");
|
||||
+
|
||||
+ caps.dwSize = sizeof(caps);
|
||||
+ caps2.dwSize = sizeof(caps2);
|
||||
+ hr = IDirectDraw4_GetCaps(ddraw, &caps, &caps2);
|
||||
+ ok(SUCCEEDED(hr), "Failed to query for caps, hr %#x.\n", hr);
|
||||
+
|
||||
+ ok(caps.ddsOldCaps.dwCaps == caps.ddsCaps.dwCaps,
|
||||
+ "Expected hal ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps.ddsOldCaps.dwCaps, caps.ddsCaps.dwCaps);
|
||||
+
|
||||
+ ok(caps2.ddsOldCaps.dwCaps == caps2.ddsCaps.dwCaps,
|
||||
+ "Expected hel ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps2.ddsOldCaps.dwCaps, caps2.ddsCaps.dwCaps);
|
||||
+
|
||||
+ IDirectDraw4_Release(ddraw);
|
||||
+}
|
||||
+
|
||||
START_TEST(ddraw4)
|
||||
{
|
||||
DDDEVICEIDENTIFIER identifier;
|
||||
@@ -15597,6 +15622,7 @@ START_TEST(ddraw4)
|
||||
test_depth_readback();
|
||||
test_clear();
|
||||
test_enum_surfaces();
|
||||
+ test_caps();
|
||||
test_viewport();
|
||||
test_find_device();
|
||||
test_killfocus();
|
||||
diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c
|
||||
index a125200..da777d8 100644
|
||||
--- a/dlls/ddraw/tests/ddraw7.c
|
||||
+++ b/dlls/ddraw/tests/ddraw7.c
|
||||
@@ -15198,6 +15198,31 @@ static void test_sysmem_draw(void)
|
||||
DestroyWindow(window);
|
||||
}
|
||||
|
||||
+static void test_caps(void)
|
||||
+{
|
||||
+ IDirectDraw7 *ddraw;
|
||||
+ DDCAPS caps, caps2;
|
||||
+ HRESULT hr;
|
||||
+
|
||||
+ ddraw = create_ddraw();
|
||||
+ ok(!!ddraw, "Failed to create a ddraw object.\n");
|
||||
+
|
||||
+ caps.dwSize = sizeof(caps);
|
||||
+ caps2.dwSize = sizeof(caps2);
|
||||
+ hr = IDirectDraw7_GetCaps(ddraw, &caps, &caps2);
|
||||
+ ok(SUCCEEDED(hr), "Failed to query for caps, hr %#x.\n", hr);
|
||||
+
|
||||
+ ok(caps.ddsOldCaps.dwCaps == caps.ddsCaps.dwCaps,
|
||||
+ "Expected hal ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps.ddsOldCaps.dwCaps, caps.ddsCaps.dwCaps);
|
||||
+
|
||||
+ ok(caps2.ddsOldCaps.dwCaps == caps2.ddsCaps.dwCaps,
|
||||
+ "Expected hel ddsOldCaps and ddsCaps to be identical (%x vs %x).\n",
|
||||
+ caps2.ddsOldCaps.dwCaps, caps2.ddsCaps.dwCaps);
|
||||
+
|
||||
+ IDirectDraw7_Release(ddraw);
|
||||
+}
|
||||
+
|
||||
START_TEST(ddraw7)
|
||||
{
|
||||
DDDEVICEIDENTIFIER2 identifier;
|
||||
@@ -15335,6 +15360,7 @@ START_TEST(ddraw7)
|
||||
test_enum_surfaces();
|
||||
test_viewport();
|
||||
test_device_load();
|
||||
+ test_caps();
|
||||
test_color_vertex();
|
||||
test_killfocus();
|
||||
test_sysmem_draw();
|
||||
--
|
||||
1.9.1
|
||||
|
Reference in New Issue
Block a user