Henri Verbeet : wined3d: Abort on invalid instructions in shader_get_registers_used().
Alexandre Julliard
julliard at winehq.org
Wed Mar 8 16:01:38 CST 2017
Module: wine
Branch: master
Commit: dfe8b7798a7bb408cec72106ba18f2c6505525a4
URL: http://source.winehq.org/git/wine.git/?a=commit;h=dfe8b7798a7bb408cec72106ba18f2c6505525a4
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Wed Mar 8 10:53:06 2017 +0100
wined3d: Abort on invalid instructions in shader_get_registers_used().
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/d3d9/tests/d3d9ex.c | 2 +-
dlls/d3d9/tests/device.c | 2 +-
dlls/wined3d/shader.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/d3d9/tests/d3d9ex.c b/dlls/d3d9/tests/d3d9ex.c
index 1dbab26..a3cbdbf 100644
--- a/dlls/d3d9/tests/d3d9ex.c
+++ b/dlls/d3d9/tests/d3d9ex.c
@@ -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);
diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c
index 5aba575..4da1653 100644
--- a/dlls/d3d9/tests/device.c
+++ b/dlls/d3d9/tests/device.c
@@ -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);
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
index 0c617c4..9601b2d 100644
--- a/dlls/wined3d/shader.c
+++ b/dlls/wined3d/shader.c
@@ -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. */
More information about the wine-cvs
mailing list