wined3d: Fix GLSL backend with non-GLSL vertex and pixel pipeline combination.
That can only happen by manually modifying select_vertex_implementation() and select_fragment_implementation(), which may be useful for testing non-default vertex / fragment pipeline implementations.
This commit is contained in:
parent
d2a3c9c20e
commit
93c88d34a8
|
@ -6584,7 +6584,7 @@ static void set_glsl_shader_program(const struct wined3d_context *context, const
|
||||||
WORD attribs_map;
|
WORD attribs_map;
|
||||||
struct wined3d_string_buffer *tmp_name;
|
struct wined3d_string_buffer *tmp_name;
|
||||||
|
|
||||||
if (!(context->shader_update_mask & (1 << WINED3D_SHADER_TYPE_VERTEX)))
|
if (!(context->shader_update_mask & (1 << WINED3D_SHADER_TYPE_VERTEX)) && ctx_data->glsl_program)
|
||||||
{
|
{
|
||||||
vs_id = ctx_data->glsl_program->vs.id;
|
vs_id = ctx_data->glsl_program->vs.id;
|
||||||
vs_list = &ctx_data->glsl_program->vs.shader_entry;
|
vs_list = &ctx_data->glsl_program->vs.shader_entry;
|
||||||
|
@ -6624,7 +6624,7 @@ static void set_glsl_shader_program(const struct wined3d_context *context, const
|
||||||
vs_list = &ffp_shader->linked_programs;
|
vs_list = &ffp_shader->linked_programs;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(context->shader_update_mask & (1 << WINED3D_SHADER_TYPE_PIXEL)))
|
if (!(context->shader_update_mask & (1 << WINED3D_SHADER_TYPE_PIXEL)) && ctx_data->glsl_program)
|
||||||
{
|
{
|
||||||
ps_id = ctx_data->glsl_program->ps.id;
|
ps_id = ctx_data->glsl_program->ps.id;
|
||||||
ps_list = &ctx_data->glsl_program->ps.shader_entry;
|
ps_list = &ctx_data->glsl_program->ps.shader_entry;
|
||||||
|
|
Loading…
Reference in New Issue