wined3d: Abort on invalid instructions in shader_get_registers_used().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Henri Verbeet 2017-03-08 10:53:06 +01:00 committed by Alexandre Julliard
parent df6540edf0
commit dfe8b7798a
3 changed files with 4 additions and 4 deletions

View File

@ -2429,7 +2429,7 @@ static void test_unsupported_shaders(void)
hr = IDirect3DDevice9Ex_CreatePixelShader(device, ps_3_224, &ps);
ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
hr = IDirect3DDevice9Ex_CreatePixelShader(device, ps_2_0_boolint, &ps);
todo_wine ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
if (ps)
IDirect3DPixelShader9_Release(ps);

View File

@ -6528,7 +6528,7 @@ float4 main(const float4 color : COLOR) : SV_TARGET
hr = IDirect3DDevice9_CreatePixelShader(device, ps_3_224, &ps);
ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
hr = IDirect3DDevice9_CreatePixelShader(device, ps_2_0_boolint, &ps);
todo_wine ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
ok(hr == D3DERR_INVALIDCALL, "Got unexpected hr %#x.\n", hr);
if (ps)
IDirect3DPixelShader9_Release(ps);

View File

@ -933,8 +933,8 @@ static HRESULT shader_get_registers_used(struct wined3d_shader *shader, const st
/* Unhandled opcode, and its parameters. */
if (ins.handler_idx == WINED3DSIH_TABLE_SIZE)
{
TRACE("Skipping unrecognized instruction.\n");
continue;
WARN("Encountered unrecognised or invalid instruction.\n");
return WINED3DERR_INVALIDCALL;
}
/* Handle declarations. */