[PATCH 5/5] wined3d: Don't pass the whole context to wined3d_ffp_get_vs_settings().
Matteo Bruni
mbruni at codeweavers.com
Wed Mar 10 13:50:19 CST 2021
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
dlls/wined3d/glsl_shader.c | 8 ++++----
dlls/wined3d/utils.c | 7 +++----
dlls/wined3d/wined3d_private.h | 5 +++--
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 9ba024ed3c7..970d7c331bd 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -10209,6 +10209,7 @@ static void set_glsl_compute_shader_program(const struct wined3d_context_gl *con
static void set_glsl_shader_program(const struct wined3d_context_gl *context_gl, const struct wined3d_state *state,
struct shader_glsl_priv *priv, struct glsl_context_data *ctx_data)
{
+ const struct wined3d_stream_info *stream_info = &context_gl->c.stream_info;
const struct wined3d_d3d_info *d3d_info = context_gl->c.d3d_info;
const struct wined3d_gl_info *gl_info = context_gl->gl_info;
const struct wined3d_shader *pre_rasterization_shader;
@@ -10244,7 +10245,7 @@ static void set_glsl_shader_program(const struct wined3d_context_gl *context_gl,
vshader = state->shader[WINED3D_SHADER_TYPE_VERTEX];
- find_vs_compile_args(state, vshader, context_gl->c.stream_info.swizzle_map, &vs_compile_args, &context_gl->c);
+ find_vs_compile_args(state, vshader, stream_info->swizzle_map, &vs_compile_args, &context_gl->c);
vs_id = find_glsl_vertex_shader(context_gl, priv, vshader, &vs_compile_args);
vs_list = &vshader->linked_programs;
}
@@ -10253,7 +10254,7 @@ static void set_glsl_shader_program(const struct wined3d_context_gl *context_gl,
struct glsl_ffp_vertex_shader *ffp_shader;
struct wined3d_ffp_vs_settings settings;
- wined3d_ffp_get_vs_settings(&context_gl->c, state, &settings);
+ wined3d_ffp_get_vs_settings(stream_info, d3d_info, state, &settings);
ffp_shader = shader_glsl_find_ffp_vertex_shader(priv, gl_info, &settings);
vs_id = ffp_shader->id;
vs_list = &ffp_shader->linked_programs;
@@ -10309,8 +10310,7 @@ static void set_glsl_shader_program(const struct wined3d_context_gl *context_gl,
{
struct ps_compile_args ps_compile_args;
pshader = state->shader[WINED3D_SHADER_TYPE_PIXEL];
- find_ps_compile_args(state, pshader, context_gl->c.stream_info.position_transformed,
- &ps_compile_args, &context_gl->c);
+ find_ps_compile_args(state, pshader, stream_info->position_transformed, &ps_compile_args, &context_gl->c);
ps_id = find_glsl_fragment_shader(context_gl, &priv->shader_buffer, &priv->string_buffers,
pshader, &ps_compile_args, &np2fixup_info);
ps_list = &pshader->linked_programs;
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 5b6056e5713..fcee986d217 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -6501,12 +6501,11 @@ int wined3d_ffp_frag_program_key_compare(const void *key, const struct wine_rb_e
return memcmp(ka, kb, sizeof(*ka));
}
-void wined3d_ffp_get_vs_settings(const struct wined3d_context *context,
- const struct wined3d_state *state, struct wined3d_ffp_vs_settings *settings)
+void wined3d_ffp_get_vs_settings(const struct wined3d_stream_info *si,
+ const struct wined3d_d3d_info *d3d_info, const struct wined3d_state *state,
+ struct wined3d_ffp_vs_settings *settings)
{
enum wined3d_material_color_source diffuse_source, emissive_source, ambient_source, specular_source;
- const struct wined3d_stream_info *si = &context->stream_info;
- const struct wined3d_d3d_info *d3d_info = context->d3d_info;
unsigned int coord_idx, i;
memset(settings, 0, sizeof(*settings));
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index db21afd02b1..36b2fe9926b 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -3571,8 +3571,9 @@ struct wined3d_ffp_vs_desc
struct wined3d_ffp_vs_settings settings;
};
-void wined3d_ffp_get_vs_settings(const struct wined3d_context *context,
- const struct wined3d_state *state, struct wined3d_ffp_vs_settings *settings) DECLSPEC_HIDDEN;
+void wined3d_ffp_get_vs_settings(const struct wined3d_stream_info *si,
+ const struct wined3d_d3d_info *d3d_info, const struct wined3d_state *state,
+ struct wined3d_ffp_vs_settings *settings) DECLSPEC_HIDDEN;
struct wined3d
{
--
2.26.2
More information about the wine-devel
mailing list