wined3d: Pass fully initialized shader objects to CS.

It shouldn't matter right now, but it might be an issue when we start to
precompile other shader types than compute shaders.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2018-03-26 08:38:49 +02:00 committed by Alexandre Julliard
parent 5818bfdbf5
commit b62aa91758
1 changed files with 12 additions and 2 deletions

View File

@ -3685,8 +3685,6 @@ static HRESULT shader_init(struct wined3d_shader *shader, struct wined3d_device
shader->load_local_constsF = shader->lconst_inf_or_nan; shader->load_local_constsF = shader->lconst_inf_or_nan;
wined3d_cs_init_object(shader->device->cs, wined3d_shader_init_object, shader);
return hr; return hr;
} }
@ -4118,6 +4116,8 @@ HRESULT CDECL wined3d_shader_create_cs(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created compute shader %p.\n", object); TRACE("Created compute shader %p.\n", object);
*shader = object; *shader = object;
@ -4143,6 +4143,8 @@ HRESULT CDECL wined3d_shader_create_ds(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created domain shader %p.\n", object); TRACE("Created domain shader %p.\n", object);
*shader = object; *shader = object;
@ -4169,6 +4171,8 @@ HRESULT CDECL wined3d_shader_create_gs(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created geometry shader %p.\n", object); TRACE("Created geometry shader %p.\n", object);
*shader = object; *shader = object;
@ -4194,6 +4198,8 @@ HRESULT CDECL wined3d_shader_create_hs(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created hull shader %p.\n", object); TRACE("Created hull shader %p.\n", object);
*shader = object; *shader = object;
@ -4219,6 +4225,8 @@ HRESULT CDECL wined3d_shader_create_ps(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created pixel shader %p.\n", object); TRACE("Created pixel shader %p.\n", object);
*shader = object; *shader = object;
@ -4244,6 +4252,8 @@ HRESULT CDECL wined3d_shader_create_vs(struct wined3d_device *device, const stru
return hr; return hr;
} }
wined3d_cs_init_object(device->cs, wined3d_shader_init_object, object);
TRACE("Created vertex shader %p.\n", object); TRACE("Created vertex shader %p.\n", object);
*shader = object; *shader = object;