Rebase against 124f48d3114fe86f5feda2ce200d87b97c4009de

This commit is contained in:
Alistair Leslie-Hughes 2019-08-29 10:11:06 +10:00
parent 512d0b1d30
commit 4aa460b8cd
7 changed files with 64 additions and 102 deletions

View File

@ -1 +0,0 @@
Fixes: Fix a bug when exception handling triggers stack guard page

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "e001daf5c1f3455ea126a12d92508e5b5d4c5463"
echo "124f48d3114fe86f5feda2ce200d87b97c4009de"
}
# Show version information
@ -333,7 +333,6 @@ patch_enable_all ()
enable_wined3d_WINED3DFMT_B8G8R8X8_UNORM="$1"
enable_wined3d_WINED3D_RS_COLORWRITEENABLE="$1"
enable_wined3d_WINED3D_TEXF_ANISOTROPIC="$1"
enable_wined3d_inverted_objects="$1"
enable_wined3d_mesa_texture_download="$1"
enable_wined3d_unset_flip_gdi="$1"
enable_wined3d_wined3d_guess_gl_vendor="$1"
@ -1128,9 +1127,6 @@ patch_enable ()
wined3d-WINED3D_TEXF_ANISOTROPIC)
enable_wined3d_WINED3D_TEXF_ANISOTROPIC="$2"
;;
wined3d-inverted-objects)
enable_wined3d_inverted_objects="$2"
;;
wined3d-mesa_texture_download)
enable_wined3d_mesa_texture_download="$2"
;;
@ -6866,21 +6862,6 @@ if test "$enable_wined3d_WINED3D_TEXF_ANISOTROPIC" -eq 1; then
) >> "$patchlist"
fi
# Patchset wined3d-inverted-objects
# |
# | This patchset fixes the following Wine bugs:
# | * [#47636] wined3d: Correct inverted objects.
# |
# | Modified files:
# | * dlls/wined3d/adapter_gl.c
# |
if test "$enable_wined3d_inverted_objects" -eq 1; then
patch_apply wined3d-inverted-objects/0001-wined3d-Stop-objects-being-inverted.patch
(
printf '%s\n' '+ { "Henri Verbeet", "wined3d: Stop objects being inverted.", 1 },';
) >> "$patchlist"
fi
# Patchset wined3d-mesa_texture_download
# |
# | This patchset fixes the following Wine bugs:

View File

@ -1,20 +1,20 @@
From 43a35936ba3b28d27dd4b24ff43e2e23995b189c Mon Sep 17 00:00:00 2001
From 1d6a51b293214963c79307e6cc3d76ce150e8645 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 18 Aug 2017 23:51:59 +0200
Subject: [PATCH] wined3d: Implement dual source blending.
---
dlls/d3d11/tests/d3d11.c | 2 +-
dlls/wined3d/adapter_gl.c | 10 ++++++++++
dlls/wined3d/adapter_gl.c | 11 +++++++++++
dlls/wined3d/context.c | 15 ++++++++++++++-
dlls/wined3d/glsl_shader.c | 20 +++++++++++++++++---
dlls/wined3d/shader.c | 2 ++
dlls/wined3d/state.c | 14 ++++++++++++--
dlls/wined3d/wined3d_private.h | 24 ++++++++++++++++++++++--
7 files changed, 78 insertions(+), 9 deletions(-)
7 files changed, 79 insertions(+), 9 deletions(-)
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index dc896fc8d..f948194ae 100644
index dc896fc8dc0..f948194aea3 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -29508,7 +29508,7 @@ static void test_dual_blending(void)
@ -27,10 +27,10 @@ index dc896fc8d..f948194ae 100644
ID3D11BlendState_Release(blend_state);
diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c
index 86e347d85..6cd5f4d46 100644
index 0415099439c..32e4c70ac90 100644
--- a/dlls/wined3d/adapter_gl.c
+++ b/dlls/wined3d/adapter_gl.c
@@ -2976,6 +2976,12 @@ static void wined3d_adapter_init_limits(struct wined3d_gl_info *gl_info, struct
@@ -2969,6 +2969,12 @@ static void wined3d_adapter_init_limits(struct wined3d_gl_info *gl_info)
gl_info->limits.buffers = min(MAX_RENDER_TARGET_VIEWS, gl_max);
TRACE("Max draw buffers: %u.\n", gl_max);
}
@ -43,22 +43,30 @@ index 86e347d85..6cd5f4d46 100644
if (gl_info->supported[ARB_MULTITEXTURE])
{
if (gl_info->supported[WINED3D_GL_LEGACY_CONTEXT])
@@ -3810,6 +3816,10 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter,
@@ -5101,6 +5107,7 @@ static void wined3d_adapter_gl_init_d3d_info(struct wined3d_adapter_gl *adapter_
struct fragment_caps fragment_caps;
struct shader_caps shader_caps;
GLfloat f[2];
+ int i;
TRACE("Max texture stages: %u.\n", d3d_info->limits.ffp_blend_stages);
adapter_gl->a.shader_backend->shader_get_caps(&adapter_gl->a, &shader_caps);
adapter_gl->a.vertex_pipe->vp_get_caps(&adapter_gl->a, &vertex_caps);
@@ -5121,6 +5128,10 @@ static void wined3d_adapter_gl_init_d3d_info(struct wined3d_adapter_gl *adapter_
d3d_info->limits.ffp_vertex_blend_matrices = vertex_caps.max_vertex_blend_matrices;
d3d_info->limits.active_light_count = vertex_caps.max_active_lights;
+ d3d_info->valid_dual_rt_mask = 0;
+ for (i = 0; i < gl_info->limits.dual_buffers; ++i)
+ d3d_info->valid_dual_rt_mask |= (1u << i);
+
if (!d3d_info->shader_color_key)
{
/* We do not want to deal with re-creating immutable texture storage
d3d_info->limits.max_rt_count = gl_info->limits.buffers;
d3d_info->limits.max_clip_distances = gl_info->limits.user_clip_distances;
d3d_info->limits.texture_size = gl_info->limits.texture_size;
diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index 2509d90fd..cacec1181 100644
index 672efa7aef2..b118312b353 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -3124,10 +3124,23 @@ static uint32_t find_draw_buffers_mask(const struct wined3d_context_gl *context_
@@ -3129,10 +3129,23 @@ static uint32_t find_draw_buffers_mask(const struct wined3d_context_gl *context_
else if (!context_gl->c.render_offscreen)
return context_generate_rt_mask_from_resource(rts[0]->resource);
@ -84,10 +92,10 @@ index 2509d90fd..cacec1181 100644
{
i = wined3d_bit_scan(&mask);
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index e5f51925c..26c078536 100644
index 76c3f9fc99c..22535beceda 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -2821,6 +2821,7 @@ static void shader_glsl_get_register_name(const struct wined3d_shader_register *
@@ -2820,6 +2820,7 @@ static void shader_glsl_get_register_name(const struct wined3d_shader_register *
break;
case WINED3DSPR_COLOROUT:
@ -95,7 +103,7 @@ index e5f51925c..26c078536 100644
if (reg->idx[0].offset >= gl_info->limits.buffers)
WARN("Write to render target %u, only %d supported.\n",
reg->idx[0].offset, gl_info->limits.buffers);
@@ -7737,7 +7738,10 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
@@ -7735,7 +7736,10 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
{
const struct wined3d_shader_signature *output_signature = &shader->output_signature;
@ -107,7 +115,7 @@ index e5f51925c..26c078536 100644
if (output_signature->element_count)
{
for (i = 0; i < output_signature->element_count; ++i)
@@ -7752,7 +7756,12 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
@@ -7750,7 +7754,12 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
continue;
}
if (shader_glsl_use_explicit_attrib_location(gl_info))
@ -121,7 +129,7 @@ index e5f51925c..26c078536 100644
shader_addline(buffer, "out %s4 color_out%u;\n",
component_type_info[output->component_type].glsl_vector_type, output->semantic_idx);
}
@@ -7765,7 +7774,12 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
@@ -7763,7 +7772,12 @@ static GLuint shader_glsl_generate_fragment_shader(const struct wined3d_context_
{
i = wined3d_bit_scan(&mask);
if (shader_glsl_use_explicit_attrib_location(gl_info))
@ -136,10 +144,10 @@ index e5f51925c..26c078536 100644
}
}
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
index 870899502..1bd40a8b8 100644
index 3b9a96abc69..5c96d3be7ef 100644
--- a/dlls/wined3d/shader.c
+++ b/dlls/wined3d/shader.c
@@ -4165,6 +4165,8 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
@@ -4168,6 +4168,8 @@ void find_ps_compile_args(const struct wined3d_state *state, const struct wined3
if (rtv && rtv->format->id == WINED3DFMT_A8_UNORM && !is_identity_fixup(rtv->format->color_fixup))
args->rt_alpha_swizzle |= 1u << i;
}
@ -149,7 +157,7 @@ index 870899502..1bd40a8b8 100644
static HRESULT pixel_shader_init(struct wined3d_shader *shader, struct wined3d_device *device,
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index d860d13bd..c617d70e5 100644
index 54c0c67fbad..816d0de63fa 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -533,12 +533,14 @@ static void state_blend(struct wined3d_context *context, const struct wined3d_st
@ -192,7 +200,7 @@ index d860d13bd..c617d70e5 100644
state->render_states[WINED3D_RS_SRCBLEND],
state->render_states[WINED3D_RS_DESTBLEND], rt_format);
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index c628b2fa8..e1fe2292a 100644
index 10d076edccc..86a255d37a6 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -199,6 +199,7 @@ struct wined3d_d3d_info
@ -203,7 +211,7 @@ index c628b2fa8..e1fe2292a 100644
uint32_t wined3d_creation_flags;
uint32_t xyzrhw : 1;
uint32_t emulated_flatshading : 1;
@@ -1396,7 +1397,8 @@ struct ps_compile_args
@@ -1397,7 +1398,8 @@ struct ps_compile_args
DWORD alpha_test_func : 3;
DWORD render_offscreen : 1;
DWORD rt_alpha_swizzle : 8; /* MAX_RENDER_TARGET_VIEWS, 8 */
@ -213,7 +221,7 @@ index c628b2fa8..e1fe2292a 100644
};
enum fog_src_type
@@ -1935,7 +1937,8 @@ struct wined3d_context
@@ -1963,7 +1965,8 @@ struct wined3d_context
DWORD destroyed : 1;
DWORD destroy_delayed : 1;
DWORD clip_distance_mask : 8; /* WINED3D_MAX_CLIP_DISTANCES, 8 */
@ -223,7 +231,7 @@ index c628b2fa8..e1fe2292a 100644
DWORD constant_update_mask;
DWORD numbered_array_mask;
@@ -2639,6 +2642,7 @@ struct wined3d_fbo_ops
@@ -2673,6 +2676,7 @@ struct wined3d_fbo_ops
struct wined3d_gl_limits
{
UINT buffers;
@ -231,7 +239,7 @@ index c628b2fa8..e1fe2292a 100644
UINT lights;
UINT textures;
UINT texture_coords;
@@ -3106,6 +3110,22 @@ struct wined3d_state
@@ -3172,6 +3176,22 @@ struct wined3d_state
struct wined3d_rasterizer_state *rasterizer_state;
};
@ -255,5 +263,5 @@ index c628b2fa8..e1fe2292a 100644
{
GLuint tex_1d;
--
2.22.0
2.17.1

View File

@ -1,4 +1,4 @@
From 723d31582725f1e0e590d55f9e52b80f500e1070 Mon Sep 17 00:00:00 2001
From 8913135cac5dc534714254b6a05d088811229cc2 Mon Sep 17 00:00:00 2001
From: Paul Gofman <gofmanp@gmail.com>
Date: Mon, 25 Feb 2019 20:15:07 +0300
Subject: [PATCH] wined3d: Allow higher world matrix states.
@ -16,22 +16,22 @@ Signed-off-by: Paul Gofman <gofmanp@gmail.com>
8 files changed, 268 insertions(+), 7 deletions(-)
diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c
index 630360286..686819ab8 100644
index 6a7a1ec12fe..77fb869b901 100644
--- a/dlls/wined3d/adapter_gl.c
+++ b/dlls/wined3d/adapter_gl.c
@@ -3786,6 +3786,7 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter,
d3d_info->ffp_alpha_test = !!gl_info->supported[WINED3D_GL_LEGACY_CONTEXT];
@@ -5142,6 +5142,7 @@ static void wined3d_adapter_gl_init_d3d_info(struct wined3d_adapter_gl *adapter_
TRACE("Max texture stages: %u.\n", d3d_info->limits.ffp_blend_stages);
d3d_info->limits.ffp_vertex_blend_matrices = vertex_caps.max_vertex_blend_matrices;
d3d_info->limits.active_light_count = vertex_caps.max_active_lights;
+ d3d_info->limits.ffp_max_vertex_blend_matrix_index = vertex_caps.max_vertex_blend_matrix_index;
d3d_info->emulated_flatshading = vertex_caps.emulated_flatshading;
adapter->fragment_pipe->get_caps(adapter, &fragment_caps);
d3d_info->valid_dual_rt_mask = 0;
for (i = 0; i < gl_info->limits.dual_buffers; ++i)
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
index a076253ce..e0f9a4759 100644
index 732e5a2ce7e..0822e25e513 100644
--- a/dlls/wined3d/cs.c
+++ b/dlls/wined3d/cs.c
@@ -1668,7 +1668,8 @@ static void wined3d_cs_exec_set_transform(struct wined3d_cs *cs, const void *dat
@@ -1671,7 +1671,8 @@ static void wined3d_cs_exec_set_transform(struct wined3d_cs *cs, const void *dat
const struct wined3d_cs_set_transform *op = data;
cs->state.transforms[op->state] = op->matrix;
@ -42,10 +42,10 @@ index a076253ce..e0f9a4759 100644
}
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index a7b479396..4fbcb4de0 100644
index 95a53309aa7..a9c3a2cd296 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -4086,6 +4086,11 @@ HRESULT CDECL wined3d_device_get_device_caps(const struct wined3d_device *device
@@ -4096,6 +4096,11 @@ HRESULT CDECL wined3d_device_get_device_caps(const struct wined3d_device *device
adapter->vertex_pipe->vp_get_caps(adapter, &vertex_caps);
if (device->create_parms.flags & WINED3DCREATE_SOFTWARE_VERTEXPROCESSING)
caps->MaxVertexShaderConst = adapter->d3d_info.limits.vs_uniform_count_swvp;
@ -58,7 +58,7 @@ index a7b479396..4fbcb4de0 100644
}
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 967348dd0..6e9af4a8a 100644
index fd03ce63494..88da6681525 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -2030,6 +2030,8 @@ HRESULT CDECL wined3d_get_device_caps(const struct wined3d *wined3d, unsigned in
@ -71,10 +71,10 @@ index 967348dd0..6e9af4a8a 100644
caps->FVFCaps = vertex_caps.fvf_caps;
caps->RasterCaps |= vertex_caps.raster_caps;
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 98d0ad149..0293dde22 100644
index df435e90d0f..c3fe023bb1b 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -11987,6 +11987,258 @@ static const struct wined3d_state_entry_template glsl_vertex_pipe_vp_states[] =
@@ -11999,6 +11999,258 @@ static const struct wined3d_state_entry_template glsl_vertex_pipe_vp_states[] =
{STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(1)), {STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(1)), glsl_vertex_pipe_vertexblend }, WINED3D_GL_EXT_NONE },
{STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(2)), {STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(2)), glsl_vertex_pipe_vertexblend }, WINED3D_GL_EXT_NONE },
{STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(3)), {STATE_TRANSFORM(WINED3D_TS_WORLD_MATRIX(3)), glsl_vertex_pipe_vertexblend }, WINED3D_GL_EXT_NONE },
@ -334,10 +334,10 @@ index 98d0ad149..0293dde22 100644
{STATE_TEXTURESTAGE(1, WINED3D_TSS_TEXTURE_TRANSFORM_FLAGS), {STATE_TEXTURESTAGE(1, WINED3D_TSS_TEXTURE_TRANSFORM_FLAGS), glsl_vertex_pipe_texmatrix}, WINED3D_GL_EXT_NONE },
{STATE_TEXTURESTAGE(2, WINED3D_TSS_TEXTURE_TRANSFORM_FLAGS), {STATE_TEXTURESTAGE(2, WINED3D_TSS_TEXTURE_TRANSFORM_FLAGS), glsl_vertex_pipe_texmatrix}, WINED3D_GL_EXT_NONE },
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index 25eeab3d9..42af06efc 100644
index 19eb36f28d0..f72bb0139cc 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -5412,7 +5412,8 @@ static void prune_invalid_states(struct wined3d_state_entry *state_table, const
@@ -5422,7 +5422,8 @@ static void prune_invalid_states(struct wined3d_state_entry *state_table, const
state_table[i].apply = state_undefined;
}
@ -348,7 +348,7 @@ index 25eeab3d9..42af06efc 100644
for (i = start; i <= last; ++i)
{
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index b9cad2a56..aac6fb848 100644
index e10d617b4e9..3772abb6186 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -5088,11 +5088,9 @@ const char *debug_d3dtstype(enum wined3d_transform_state tstype)
@ -367,10 +367,10 @@ index b9cad2a56..aac6fb848 100644
return "unrecognized";
}
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 9b030ebd7..81ccfef2c 100644
index 6a70ce3e369..bec02013c9f 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -173,6 +173,7 @@ struct wined3d_d3d_limits
@@ -174,6 +174,7 @@ struct wined3d_d3d_limits
unsigned int ffp_blend_stages;
unsigned int ffp_vertex_blend_matrices;
unsigned int active_light_count;
@ -379,5 +379,5 @@ index 9b030ebd7..81ccfef2c 100644
unsigned int max_rt_count;
unsigned int max_clip_distances;
--
2.22.0
2.17.1

View File

@ -1,4 +1,4 @@
From 5de05424cc34f3f98b1b2795d3d0544a9e7d916e Mon Sep 17 00:00:00 2001
From ac40dcacea3cbe9a41f25b368af126362cffa771 Mon Sep 17 00:00:00 2001
From: Paul Gofman <gofmanp@gmail.com>
Date: Mon, 25 Feb 2019 14:47:28 +0300
Subject: [PATCH] wined3d: Report actual vertex shader float constants limit
@ -13,10 +13,10 @@ Signed-off-by: Paul Gofman <gofmanp@gmail.com>
4 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c
index 1e236fe23d4..1fb1884325a 100644
index ca2b4126bca..6a7a1ec12fe 100644
--- a/dlls/wined3d/adapter_gl.c
+++ b/dlls/wined3d/adapter_gl.c
@@ -3788,7 +3788,8 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter,
@@ -5133,7 +5133,8 @@ static void wined3d_adapter_gl_init_d3d_info(struct wined3d_adapter_gl *adapter_
d3d_info->limits.gs_version = shader_caps.gs_version;
d3d_info->limits.ps_version = shader_caps.ps_version;
d3d_info->limits.cs_version = shader_caps.cs_version;
@ -25,12 +25,12 @@ index 1e236fe23d4..1fb1884325a 100644
+ d3d_info->limits.vs_uniform_count = min(WINED3D_MAX_VS_CONSTS_F, shader_caps.vs_uniform_count);
d3d_info->limits.ps_uniform_count = shader_caps.ps_uniform_count;
d3d_info->limits.varying_count = shader_caps.varying_count;
d3d_info->full_ffp_varyings = !!(shader_caps.wined3d_caps & WINED3D_SHADER_CAP_FULL_FFP_VARYINGS);
d3d_info->limits.ffp_textures = fragment_caps.MaxSimultaneousTextures;
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 7aa238b3311..ca18e439b38 100644
index c6b3b9e46ed..e8a654763ae 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -4088,10 +4088,21 @@ struct wined3d_texture * CDECL wined3d_device_get_texture(const struct wined3d_d
@@ -4074,10 +4074,21 @@ struct wined3d_texture * CDECL wined3d_device_get_texture(const struct wined3d_d
HRESULT CDECL wined3d_device_get_device_caps(const struct wined3d_device *device, struct wined3d_caps *caps)
{
@ -54,7 +54,7 @@ index 7aa238b3311..ca18e439b38 100644
HRESULT CDECL wined3d_device_get_display_mode(const struct wined3d_device *device, UINT swapchain_idx,
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 6147d2e88fc..2440ed7b517 100644
index 013a38efc47..96fe2b66e3f 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -11234,7 +11234,10 @@ static void shader_glsl_get_caps(const struct wined3d_adapter *adapter, struct s
@ -70,7 +70,7 @@ index 6147d2e88fc..2440ed7b517 100644
caps->varying_count = gl_info->limits.glsl_varyings;
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index ab960191dee..bdf6f31ec87 100644
index dd9a1b48014..128e308abd3 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -167,6 +167,7 @@ struct wined3d_d3d_limits
@ -90,5 +90,5 @@ index ab960191dee..bdf6f31ec87 100644
/* FIXME: This needs to go up to 2048 for
--
2.23.0.rc1
2.17.1

View File

@ -1,25 +0,0 @@
From 671c1a56077d680d857d9f1ad45a43bc87aa1589 Mon Sep 17 00:00:00 2001
From: Henri Verbeet <hverbeet@codeweavers.com>
Date: Wed, 28 Aug 2019 10:19:04 +1000
Subject: [PATCH] wined3d: Stop objects being inverted.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47636
---
dlls/wined3d/adapter_gl.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c
index f0602273474..d034a18a940 100644
--- a/dlls/wined3d/adapter_gl.c
+++ b/dlls/wined3d/adapter_gl.c
@@ -3956,6 +3956,7 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter,
}
fixup_extensions(gl_info, caps_gl_ctx, gl_renderer_str, gl_vendor,
gpu_description->vendor, gpu_description->device);
+ d3d_info->clip_control = !!gl_info->supported[ARB_CLIP_CONTROL];
wined3d_driver_info_init(driver_info, gpu_description, vram_bytes, 0);
TRACE("Reporting (fake) driver version 0x%08x-0x%08x.\n",
driver_info->version_high, driver_info->version_low);
--
2.23.0.rc1

View File

@ -1 +0,0 @@
Fixes: [47636] wined3d: Correct inverted objects.