[PATCH 6/6] wined3d: Validate ps 1.x sampler indices in shader_get_registers_used().
Henri Verbeet
hverbeet at codeweavers.com
Mon Feb 20 17:40:08 CST 2017
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
dlls/wined3d/shader.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c
index 0bf8e26..519d029 100644
--- a/dlls/wined3d/shader.c
+++ b/dlls/wined3d/shader.c
@@ -1271,6 +1271,12 @@ static HRESULT shader_get_registers_used(struct wined3d_shader *shader, const st
{
unsigned int reg_idx = ins.dst[i].reg.idx[0].offset;
+ if (reg_idx >= ARRAY_SIZE(reg_maps->resource_info))
+ {
+ WARN("Invalid 1.x sampler index %u.\n", reg_idx);
+ continue;
+ }
+
TRACE("Setting fake 2D resource for 1.x pixelshader.\n");
reg_maps->resource_info[reg_idx].type = WINED3D_SHADER_RESOURCE_TEXTURE_2D;
reg_maps->resource_info[reg_idx].data_type = WINED3D_DATA_FLOAT;
--
2.1.4
More information about the wine-patches
mailing list