From: Henri Verbeet Subject: [PATCH 6/6] wined3d: Validate ps 1.x sampler indices in shader_get_registers_used(). Message-Id: <1487634008-383-6-git-send-email-hverbeet@codeweavers.com> Date: Tue, 21 Feb 2017 00:40:08 +0100 Signed-off-by: Henri Verbeet --- 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