Commit ff32b78e authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

d3d10/effect: Set IsInline in GetShaderDesc().

parent 75d21c99
...@@ -118,6 +118,7 @@ struct d3d10_effect_shader_variable ...@@ -118,6 +118,7 @@ struct d3d10_effect_shader_variable
unsigned int resource_count; unsigned int resource_count;
struct d3d10_effect_shader_resource *resources; struct d3d10_effect_shader_resource *resources;
char *stream_output_declaration; char *stream_output_declaration;
unsigned int isinline : 1;
}; };
struct d3d10_effect_state_object_variable struct d3d10_effect_state_object_variable
......
...@@ -1409,6 +1409,7 @@ static HRESULT parse_fx10_anonymous_shader(struct d3d10_effect *e, struct d3d10_ ...@@ -1409,6 +1409,7 @@ static HRESULT parse_fx10_anonymous_shader(struct d3d10_effect *e, struct d3d10_
v->type = t; v->type = t;
v->effect = e; v->effect = e;
v->u.shader.isinline = 1;
set_variable_vtbl(v); set_variable_vtbl(v);
if (!copy_name("$Anonymous", &v->name)) if (!copy_name("$Anonymous", &v->name))
...@@ -7008,7 +7009,7 @@ static HRESULT STDMETHODCALLTYPE d3d10_effect_shader_variable_GetShaderDesc( ...@@ -7008,7 +7009,7 @@ static HRESULT STDMETHODCALLTYPE d3d10_effect_shader_variable_GetShaderDesc(
D3D10_SHADER_DESC shader_desc; D3D10_SHADER_DESC shader_desc;
HRESULT hr; HRESULT hr;
FIXME("iface %p, index %u, desc %p semi-stub.\n", iface, index, desc); TRACE("iface %p, index %u, desc %p.\n", iface, index, desc);
if (FAILED(hr = d3d10_get_shader_variable(v, index, &s))) if (FAILED(hr = d3d10_get_shader_variable(v, index, &s)))
return hr; return hr;
...@@ -7017,6 +7018,7 @@ static HRESULT STDMETHODCALLTYPE d3d10_effect_shader_variable_GetShaderDesc( ...@@ -7017,6 +7018,7 @@ static HRESULT STDMETHODCALLTYPE d3d10_effect_shader_variable_GetShaderDesc(
if (s->input_signature) if (s->input_signature)
desc->pInputSignature = ID3D10Blob_GetBufferPointer(s->input_signature); desc->pInputSignature = ID3D10Blob_GetBufferPointer(s->input_signature);
desc->SODecl = s->stream_output_declaration; desc->SODecl = s->stream_output_declaration;
desc->IsInline = s->isinline;
if (s->bytecode) if (s->bytecode)
{ {
desc->pBytecode = ID3D10Blob_GetBufferPointer(s->bytecode); desc->pBytecode = ID3D10Blob_GetBufferPointer(s->bytecode);
......
...@@ -3671,8 +3671,8 @@ if (0) ...@@ -3671,8 +3671,8 @@ if (0)
ok(hr == S_OK, "Unexpected hr %#x.\n", hr); ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
hr = pdesc.pShaderVariable->lpVtbl->GetShaderDesc(pdesc.pShaderVariable, 0, &shaderdesc); hr = pdesc.pShaderVariable->lpVtbl->GetShaderDesc(pdesc.pShaderVariable, 0, &shaderdesc);
ok(hr == S_OK, "Unexpected hr %#x.\n", hr); ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
todo_wine {
ok(shaderdesc.IsInline, "Unexpected inline flag.\n"); ok(shaderdesc.IsInline, "Unexpected inline flag.\n");
todo_wine {
ok(shaderdesc.SODecl && !strcmp(shaderdesc.SODecl, "SV_POSITION.y"), "Unexpected stream output declaration %s.\n", ok(shaderdesc.SODecl && !strcmp(shaderdesc.SODecl, "SV_POSITION.y"), "Unexpected stream output declaration %s.\n",
shaderdesc.SODecl); shaderdesc.SODecl);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment