Rebase against 4f53be1a6e7c15c3648b0770f9d92685dc9a9717.

This commit is contained in:
Zebediah Figura 2020-03-05 22:33:21 -06:00
parent e61a75f75f
commit 5213d551f8
3 changed files with 25 additions and 36 deletions

View File

@ -1,4 +1,4 @@
From 882c25ffe94d7e8869ed5a364120cf0c5f2ef241 Mon Sep 17 00:00:00 2001
From a6f14f05fefc9510f673b47092cbc62a2366ccf9 Mon Sep 17 00:00:00 2001
From: Paul Gofman <gofmanp@gmail.com>
Date: Thu, 4 Apr 2019 02:25:00 +0300
Subject: [PATCH] ddraw: Allow setting texture without DDSCAPS_TEXTURE for
@ -6,26 +6,15 @@ Subject: [PATCH] ddraw: Allow setting texture without DDSCAPS_TEXTURE for
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
---
dlls/ddraw/device.c | 22 +++++--
dlls/ddraw/device.c | 20 ++++--
dlls/ddraw/tests/ddraw4.c | 128 +++++++++++++++++++++++++++++++++++++-
2 files changed, 141 insertions(+), 9 deletions(-)
2 files changed, 141 insertions(+), 7 deletions(-)
diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index e2643e6589..a43bca7a14 100644
index 11e60f80c..324475303 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -2921,10 +2921,8 @@ static HRESULT WINAPI d3d_device3_SetLightState(IDirect3DDevice3 *iface,
wined3d_mutex_unlock();
return DDERR_INVALIDPARAMS;
}
-
material_activate(m);
}
-
device->material = value;
}
else if (state == D3DLIGHTSTATE_COLORMODEL)
@@ -4807,7 +4805,8 @@ static HRESULT d3d_device7_SetTexture(IDirect3DDevice7 *iface,
@@ -4798,7 +4798,8 @@ static HRESULT d3d_device7_SetTexture(IDirect3DDevice7 *iface,
struct ddraw_surface *surf = unsafe_impl_from_IDirectDrawSurface7(texture);
struct wined3d_texture *wined3d_texture = NULL;
@ -35,7 +24,7 @@ index e2643e6589..a43bca7a14 100644
if (surf && (surf->surface_desc.ddsCaps.dwCaps & DDSCAPS_TEXTURE))
wined3d_texture = surf->wined3d_texture;
@@ -4845,19 +4844,30 @@ static HRESULT WINAPI d3d_device3_SetTexture(IDirect3DDevice3 *iface,
@@ -4834,19 +4835,30 @@ static HRESULT WINAPI d3d_device3_SetTexture(IDirect3DDevice3 *iface,
{
struct d3d_device *device = impl_from_IDirect3DDevice3(iface);
struct ddraw_surface *tex = unsafe_impl_from_IDirect3DTexture2(texture);
@ -58,7 +47,7 @@ index e2643e6589..a43bca7a14 100644
+ wined3d_texture = NULL;
+ }
+
+ wined3d_device_set_texture(device->wined3d_device, stage, wined3d_texture);
+ wined3d_stateblock_set_texture(device->state, stage, wined3d_texture);
fixup_texture_alpha_op(device);
@ -70,7 +59,7 @@ index e2643e6589..a43bca7a14 100644
static const struct tss_lookup
diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c
index e3146ca45d..8861244e05 100644
index e1d5bac18..e18f3c638 100644
--- a/dlls/ddraw/tests/ddraw4.c
+++ b/dlls/ddraw/tests/ddraw4.c
@@ -330,7 +330,7 @@ static IDirectDraw4 *create_ddraw(void)
@ -132,7 +121,7 @@ index e3146ca45d..8861244e05 100644
static IDirect3DViewport3 *create_viewport(IDirect3DDevice3 *device, UINT x, UINT y, UINT w, UINT h)
{
IDirect3DViewport3 *viewport;
@@ -16819,6 +16830,116 @@ static void test_surface_format_conversion_alpha(void)
@@ -16980,6 +16991,116 @@ static void test_surface_format_conversion_alpha(void)
DestroyWindow(window);
}
@ -249,7 +238,7 @@ index e3146ca45d..8861244e05 100644
START_TEST(ddraw4)
{
DDDEVICEIDENTIFIER identifier;
@@ -16951,6 +17072,7 @@ START_TEST(ddraw4)
@@ -17112,6 +17233,7 @@ START_TEST(ddraw4)
test_gdi_surface();
test_alphatest();
test_clipper_refcount();
@ -258,5 +247,5 @@ index e3146ca45d..8861244e05 100644
test_d32_support();
test_surface_format_conversion_alpha();
--
2.17.1
2.25.1

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "0eea1b09d3f619ea35b6b4a70b4091eae85c4834"
echo "4f53be1a6e7c15c3648b0770f9d92685dc9a9717"
}
# Show version information

View File

@ -1,20 +1,20 @@
From 0c50bf1c5e19330493e0cd108a703fd135f7541a Mon Sep 17 00:00:00 2001
From ad1e42eac7c54fd7dee27b37a1b5163180113455 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Sun, 16 Oct 2016 17:44:31 +0800
Subject: windowscodecs: Add initial implementation of the GIF encoder.
Subject: [PATCH] windowscodecs: Add initial implementation of the GIF encoder.
---
dlls/windowscodecs/clsfactory.c | 1 +
dlls/windowscodecs/gifformat.c | 999 +++++++++++++++++++++++++++++++--
dlls/windowscodecs/gifformat.c | 999 ++++++++++++++++++++++++-
dlls/windowscodecs/regsvr.c | 10 +
dlls/windowscodecs/wincodecs_private.h | 1 +
4 files changed, 977 insertions(+), 34 deletions(-)
diff --git a/dlls/windowscodecs/clsfactory.c b/dlls/windowscodecs/clsfactory.c
index 77eeedc..98938eb 100644
index 32083a2a3..2de518a00 100644
--- a/dlls/windowscodecs/clsfactory.c
+++ b/dlls/windowscodecs/clsfactory.c
@@ -49,6 +49,7 @@ static const classinfo wic_classes[] = {
@@ -50,6 +50,7 @@ static const classinfo wic_classes[] = {
{&CLSID_WICPngEncoder, PngEncoder_CreateInstance},
{&CLSID_WICBmpEncoder, BmpEncoder_CreateInstance},
{&CLSID_WICGifDecoder, GifDecoder_CreateInstance},
@ -23,7 +23,7 @@ index 77eeedc..98938eb 100644
{&CLSID_WICJpegDecoder, JpegDecoder_CreateInstance},
{&CLSID_WICJpegEncoder, JpegEncoder_CreateInstance},
diff --git a/dlls/windowscodecs/gifformat.c b/dlls/windowscodecs/gifformat.c
index ddff88b..b5c56aa 100644
index df202ba45..1ebd5660f 100644
--- a/dlls/windowscodecs/gifformat.c
+++ b/dlls/windowscodecs/gifformat.c
@@ -1,6 +1,6 @@
@ -123,7 +123,7 @@ index ddff88b..b5c56aa 100644
static HRESULT load_IMD_metadata(IStream *stream, const GUID *vendor, DWORD options,
MetadataItem **items, DWORD *count)
{
@@ -1455,3 +1457,932 @@ HRESULT GifDecoder_CreateInstance(REFIID iid, void** ppv)
@@ -1449,3 +1451,932 @@ HRESULT GifDecoder_CreateInstance(REFIID iid, void** ppv)
return ret;
}
@ -400,7 +400,7 @@ index ddff88b..b5c56aa 100644
+ hr = configure_write_source(iface, source, rc, format,
+ This->width, This->height, This->xres, This->yres);
+ if (hr == S_OK)
+ hr = write_source(iface, source, rc, format, 8, This->width, This->height);
+ hr = write_source(iface, source, rc, format, 8, FALSE /* FIXME */, This->width, This->height);
+ }
+ else
+ hr = WINCODEC_ERR_WRONGSTATE;
@ -1057,10 +1057,10 @@ index ddff88b..b5c56aa 100644
+ return ret;
+}
diff --git a/dlls/windowscodecs/regsvr.c b/dlls/windowscodecs/regsvr.c
index 10a6c03..ab249b0 100644
index d215e3080..5d317768e 100644
--- a/dlls/windowscodecs/regsvr.c
+++ b/dlls/windowscodecs/regsvr.c
@@ -1391,6 +1391,16 @@ static struct regsvr_encoder const encoder_list[] = {
@@ -1404,6 +1404,16 @@ static struct regsvr_encoder const encoder_list[] = {
".bmp,.dib,.rle",
bmp_encode_formats
},
@ -1078,10 +1078,10 @@ index 10a6c03..ab249b0 100644
"The Wine Project",
"JPEG Encoder",
diff --git a/dlls/windowscodecs/wincodecs_private.h b/dlls/windowscodecs/wincodecs_private.h
index a8af0d6..b60db8c 100644
index 7686e8071..3e29b3a06 100644
--- a/dlls/windowscodecs/wincodecs_private.h
+++ b/dlls/windowscodecs/wincodecs_private.h
@@ -81,6 +81,7 @@ extern HRESULT PngEncoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN
@@ -143,6 +143,7 @@ extern HRESULT PngEncoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN
extern HRESULT BmpEncoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN;
extern HRESULT DibDecoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN;
extern HRESULT GifDecoder_CreateInstance(REFIID riid, void** ppv) DECLSPEC_HIDDEN;
@ -1090,5 +1090,5 @@ index a8af0d6..b60db8c 100644
extern HRESULT JpegDecoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN;
extern HRESULT JpegEncoder_CreateInstance(REFIID iid, void** ppv) DECLSPEC_HIDDEN;
--
2.9.0
2.25.1